基于单片机射频无线键盘设计Word格式文档下载.docx

上传人:b****4 文档编号:8007639 上传时间:2023-05-09 格式:DOCX 页数:41 大小:338.83KB
下载 相关 举报
基于单片机射频无线键盘设计Word格式文档下载.docx_第1页
第1页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第2页
第2页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第3页
第3页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第4页
第4页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第5页
第5页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第6页
第6页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第7页
第7页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第8页
第8页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第9页
第9页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第10页
第10页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第11页
第11页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第12页
第12页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第13页
第13页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第14页
第14页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第15页
第15页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第16页
第16页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第17页
第17页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第18页
第18页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第19页
第19页 / 共41页
基于单片机射频无线键盘设计Word格式文档下载.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机射频无线键盘设计Word格式文档下载.docx

《基于单片机射频无线键盘设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机射频无线键盘设计Word格式文档下载.docx(41页珍藏版)》请在冰点文库上搜索。

基于单片机射频无线键盘设计Word格式文档下载.docx

在未来高科技战斗中,由于军事卫星通讯手段在未来战争中容易被摧毁且难以紧急恢复,所以人们可以利用无线短波、超短波等方式实现数据是无线传输,因而取得战争中的主动权。

民用方面,在一些线路架设比较困难的地方,或者有天然的阻隔的地理条件较复杂较恶劣的地方数据的无线传输便显示出了巨大威力。

无线传输还便于通讯设备移动,具有明显的灵活性。

二、数据无线传输的发展现状及前景

进入二十一世纪,无线数据通讯技术在我国蓬勃发展,也得到了信息产业部以及各行各业的高度重视,因为任何有线数据传输网络只能是网状覆盖,而无线数据传输网可达到真正的面覆盖。

目前主要的短距离无线数据传输技术主要有蓝牙、Zigbee、IEEE802.11x、微功率短距离无线通讯技术,与已具备相当规模的无线长距离通讯网络(比如蜂窝移动通讯网、卫星数据通讯)相比,短距离无线通讯系统在基本结构、服务范围、应用层次以及通讯业务(数据、话音、视频)上,均有很大不同。

下面分别介绍这几种无线传输技术。

蓝牙技术(Bluetooth)主要面对网络中的各种数据和语言设备,通过无线方式将它们连接起来,从而方便快速的实现数据传输,它使用2.4GHZ的ISM频段,最大传输率1Mbit/s。

IEEE802.11x的技术标准是无线局域网的国际标准,也是用2.4GHZ的ISM频段,协议主要在OSI的物理层和数据链路层,虽然传输速度快,但此类设备比较昂贵,技术复杂。

Zigbee是一种新型的短距离、低速度、低功耗无线网络技术,是一种介于无线标记技术和蓝牙之间的技术,基于IEEE无线个人区域网标准,数据传输速率通常为10kb/s到250kb/s,有效覆盖范围10到75米,由于其协议简单、成本低、网络容量大等优点,使其在无线传感网络中得到广泛的应用。

在未来,短距离无线数据传输将向着更高传输速率、更高传输精确度的方向发展,而且传输设备的成本也会进一步降低,传输协议也会进一步简单,从而是短距离无线通讯走入我们的生活,给我带来更多方便。

三、作品研究的目的和意义

本作品研究的内容是通过MCU按照无线协议控制无线数据芯片,以此来实现大量数据的无线高速传输,无论是在国防军事方面,还是民用通讯方面都有很重要的研究意义。

四、作品简介

实物作品,实现了一种基于PS/2接口和电脑进行无线数据通信的系统。

五、基本思路和关键技术

1、整体设计思路和框图

通过单片机将键盘数据采集,再利用单片机转换将信号转换成数字信号,然后通过SPI总线将数据传输给无线发送芯片,无线发送芯片将数据发送出去。

同样,接收端单片机通过SPI总线控制接收端芯片,将无线传输过来的数据接收,再经过USB接口芯片转换,将数据传送给电脑,从而实现了无线数据传输。

系统整体流程图如图1所示:

图1.整体设计流程图

2、PS/2数据采集接口

一般,具有五脚连接器的键盘称之为AT键盘,而具有六脚mini-DIN连接器的键盘则称之为PS/2键盘。

在本作品中使用的是六脚mini-DIN连接器,其实这两种连接器都只有四个脚有意义,它们分别是Clock(时钟脚)、Data(数据脚)、+5V(电源脚)和Ground(电源地)。

在PS/2键盘与PC机的物理连接上只要保证这四根线一一对应就可以了。

在本设计中只需将+5V(电源脚)与单片机的40脚相连,Ground(电源地)与单片机的20脚相连,Clock(时钟脚)与单片机的12脚外部中断相连,Data(数据脚)与其它任一I/O口相连即可。

[1]现在比较常用的连接器如图3所示。

图3PS/2的mini-DIN连接器

3、PS/2电气特性

PS/2通讯协议是一种双向同步串行通讯协议。

通讯的两端通过Clock(时钟脚)同步,并通过Data(数据脚)交换数据。

任何一方如果想抑制另外一方通讯时,只需要把Clock(时钟脚)拉到低电平。

[4]如果是PC机和PS/2键盘间的通讯,则PC机必须做主机,也就是说,PC机可以抑制PS/2键盘发送数据,而PS/2键盘则不会抑制PC机发送数据。

一般两设备间传输数据的最大时钟频率是33kHz,大多数PS/2设备工作在10~20kHz。

推荐值在15kHz左右,也就是说,Clock(时钟脚)高、低电平的持续时间都为40μs。

每一数据帧包含11~12个位,具体含义如表2所列。

表2数据帧格式说明

表1个起始位

总是逻辑0

8个数据位

(LSB)低位在前

1个奇偶校验位

奇校验

1个停止位

总是逻辑1

1个应答位

仅用在主机对设备的通讯中

4、数据传送输模块介绍

nRF2401是北欧集成电路公司生产的单片射频收发芯片,工作于2.4~2.5GHzISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。

芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。

其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。

引脚分布图

其特点如下:

●全球开放的2.4GHz频段多频道125个满足多频及跳频需要

●高速率1Mbps高于蓝牙内置硬件CRC电路及多点通信控制高数据吞吐量

●采用0.18um先进加工技术极具竞争力的成本

●1.9-3.6V低电压低功耗满足低功耗设计需要

●广泛适用于手持终端PDA无线数字耳机数字视频数码相机以及其他短距离高速无线通信应用

●集成度高所有高频元件包括电感滤波器振荡器等已经全部集成在芯片内部使得产品一致性良好成本低性能稳定且不受外界影响

●内部具有点对多点通信协议控制每个芯片可以通过软件设置最多40bit地址只有收到本机地址时才会输出数据提供一个中断指示编程方便

点对多点通信示意图

●嵌入CRC通信效验协议纠检错是无线通信设计的难点,nRF2401内置了CRC硬件电路和协议;

●双接收功能独特设计nRF2401的DuoCeiver技术可以同时接收两个nRF2401的数据可以有效降低成本拓展用途

●编程配置发射功率工作频率等所有工作参数全部通过SPI串口软件设置完成

●外围元件极少,只需一个晶振和一个电阻即可设计射频电路;

●发射功率和工作频率等所有工作参数可全部通过软件设置;

●电流消耗很小,-5dBm输出功率时的典型峰值电流为10.5mA;

●芯片内部设置有专门的稳压电路,因此,使用任何电源(包括DC/DC开关电源)均有很好的通信效果;

●采用DuoCeiver技术可同时接收两个nRF2401的数据;

●采用ShockBurstTM模式时,能适用极低的功率操作和不严格的MCU执行;

●带有集成增强型8051内核、9路10bitADC、UART异步串口、SPI串口和PWM输出;

●内置看门狗;

●无需外部SAW滤波器;

●可100%RF检验;

●带有数据时隙和数据时钟恢复功能.

3内部工作原理和外部组成原理图

nRF2401的内部结构原理及外部组成框图如图2所示,下面介绍其工作原理.

 5、射频模块ShockBurstTM模式应用技术

  nRF2401的ShockBurstTMRX/TX模式采用片上先进先出(FIFO)来进行低数据率的时钟同步和高数据率的传输,因此极大的降低了功耗.

  ShockBurstTM发射主要通过MCU接口引脚CE、CLK1和DATA来完成.当MCU请求发送数据时,置CE为高电平,此时的接收机地址和有效载荷数据作为nRF2401的内部时钟,可用请求协议或MCU将速率调至1Mbps;

置CE为低电平可激活ShockBurstTM发射.

双接收模式

  ShockBurstTM接收主要使用MCU接口引脚CE、DR1、CLK1和DATA来实现.当正确设置射频包输入载荷的地址和大小后,置CE为高电平可激活RX.此后便可在nRF2401监测信息输入200μs,若收到有效数据包,则给MCU一个中断并置DR1为高电平,以使MCU以时钟形式输出有效载荷数据,待系统收到全部数据后,此时RF2401再置DR1为低电平,此时如果CE保持高电平,则等待新的数据包.若CE置低电平,则开始接收新的序列。

 DuoCeiverTM的双信道接收模式:

nRF2401的DuoCeiverTM技术为RX提供了两个独立的专用数字信道,因而可代替两个单独接收系统.图3所示是DuoCeiverTM同时双接收信道结构图.nRF2401可以通过一个天线接口从相隔8MHz的两个1Mbps接收机上接收数据.同时将两个数字信道的输出反馈到两个单独的MCU接口.具体的两个信道如下:

  数字信道1:

CLK1,DATA,DR1;

  数字信道2:

CLK2,DOUT2,DR2;

应当说明的是,数字信道2的频率只有在比数字信道1的频率高出8MHz时,才能保证正常接收.

6、直接收发模式应用技术

在直接收发模式下,nRF2401如传统的射频收发器一样工作。

在直接发送时接口引脚为CE、DATA。

当微控制器有数据要发送时,把CE置高,nRF2401射频前端被激活。

所有的射频协议必须在微控制器程序中进行处理(包括字头、地址和CRC校验码)。

在直接接收模式时接口引脚为CE、CLK1和DATA。

一旦nRF2401被配置为直接接收模式,DATA引脚将根据天线接收到的信号开始高低变化(由于噪声的存在),CLK1引脚也开始工作,一旦接收到有效的字头,CLK1引脚和DATA引脚将协调工作,把射频数据包以其被发射时的数据从DATA引脚送给微控制器,字头必须是8位。

由于DR引脚没用上,所有的地址和CRC校验必须在微控制器内部进行。

7、数据接收模式应用技术

接收端单片机可以通过输入C语言程序对无线射频芯片NRF24L01的参数进行设置,设为接收模式,即可接受检验信号。

接收到检验信号后,NRF24L01的自动应答功能会发送应答信号给发送端已确认收到信号,接着NRF24L01通过IRQ中断通知接收端单片机,单片机进行数据接收并通过USB芯片将其转换成电脑识别的信号传给电脑。

接收端的单片机在接收到中断的同时,要同发射端芯片进行时间上的协同,以此来保证发送和接收的配合。

最后清除NRF24L01的状态寄存器,再次为下一次数据的接收做好准备。

8、MCU硬件串行通信应用技术

RS-232是现在主流的串行通信接口之一。

  由于RS232接口标准出现较早,难免有不足之处,主要有以下四点:

  

(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。

  

(2)传输速率较低,在异步传输时,波特率为20Kbps;

因此在“南方的老树51CPLD开发板”中,综合程序波特率只能采用19200,也是这个原因。

(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。

在MAX232与单片机进行通信时,串行口的SBUF是作为同步移位寄存器使用的。

在串行口发送时,SBUF相当于一个并行进入、串行输出的移位寄存器,由单片机的内部总线并行接收8位数据,并从RXD信号线串行输出。

在接收操作时,它又相当于一个串行输入、输出的移位寄存器。

在本设计中MAX232与单片机的串口通信原理图如下所示:

上图为本设计应用的RS232串行通信原理图

9、PS/2接口的键盘与无线发射模块的数据传送应用技术

在本设计中PS/2键盘与单片机的连接方式如图9所示。

P3.2口接PS/2数据线;

P3.3(INT0)接PS/2时钟线,即采用外部中断0的方式来接受PS/2接口键盘的传输数据。

①从设备到主设备的通信

当从设备向主设备发送数据时,首先检查时钟线,以确认时钟线是否为高电平。

如果是高电平,从设备就可以开始传输数据;

反之,从设备要等待获得总线的控制权,才能开始传输数据。

传输的每一帧由11位组成,发送时序及每一位的含义如图7所示。

图7从设备到主设备的通信

每一帧数据中开始位总是为0,数据校验采用奇校验方式,停止位始终为1。

从设备到主设备通信时,从设备总是在时钟线为高时改变数据线状态,主设备在时钟下降沿读人数据线状态。

②主设备到从设备的通信

主设备与从设备进行通信时,主设备首先将时钟线和数据线设置为“请求发送”状态,具体方式为:

首先下拉时钟线至少100us抑制通信,然后下拉数据线“请求发送”最后释放时钟线。

在此过程中,从设备在不超过10us的间隔内必须检查这个状态,当设备检测到这个状态时,它将开始产生时钟信号。

此时数据传输的每一帧由12位构成,其时序和每一位含义如图8所示。

图8主设备到从设备的通信

与从设备到主设备通信相比,其每帧数据多了一个ACK位。

这是从设备应答接收到字节的应答位,由从设备通过拉低数据线产生,应答位ACK总是为0。

主设备到从设备通信过程中,主设备总是在时钟线为低电平时改变数据线的状态,从设备在时钟上升沿读人数据线状态。

图9硬件连接电路

单片机接收完数据后便要进入nRF24L01的发射模块。

在本设计中nRF24L01选择ShockBurstTM收发工作模式。

在ShockBurstTM发射流程中,接口引脚为CE,CLK1,DATA,当微控制器有数据要发送时,其把CE置高,使nRF24L01工作。

当nRF24L01工作后,才把接收机的地址和要发送的数据按时序送入nRF24L01,随后微控制器把CE置低,激发nRF24L01进行ShockBurstTM发射。

10、无线接收应用技术

在nRF24L01工作在ShockBurstTM接收流程中,接口引脚CE、DR1、CLK1和DATA(接收通道1),首先要配置本机地址和要接收的数据包大小。

一但进入接收状态,便把CE置高,200us后,nRF2401进入监视状态,等待数据包的到来。

当接收到正确的数据包(正确的地址和CRC校验码),nRF2401自动把字头、地址和CRC校验位移去,nRF2401通过把DR1(这个引脚一般引起微控制器中断)置高通知微控制器,之后微控制器把数据从nRF2401移出,所有数据移完,nRF2401把DR1置低,此时,如果CE为高,则等待下一个数据包,如果CE为低,开始其它工作流程。

六、PCB电路板制作的关键技术材料

1、PCB电路图

图基于PS/2接口的无线数据传送系统的PCB图

2、装配图

3、元件清单

元件标号

封装

参数

C1

rad0.1

104

C2

C3

C4

C5

C6

C7

C8

C9

C10

cap0.1

220U

C11

10U

C12

C13

0.1

C14

20

C15

C16

C17

C18

100U

C19

C20

C21

D1

led

LED

D2

 

J1

sip4

ISP

J2

USB1

USB

J3

DB9RA/M

DB9

JP1

IDC10

24L01

LED1

R1

AXIAL0.4

1K

R2

R3

R4

R5

10K

R6

22

R7

RP1

SIP9

S1

BUT1

TEST

U1

SOJ-28

PDIUSBD12

U2

DIP40

8051

U3

DIP16

MAX232

U4

AS1117a

AMS1117

Y1

XTAL1

6M

Y2

22.1184M

七、软件设计流程图

1、主程序流程图

主程序先对系统初始化,接收机初始化后等待进入中断接收数据,转换数据传给芯片转换。

发送机初始化后,等待PS/2的数据信号,采集转换给射频模块,无线送出数据。

主程序流程图如下图所示。

图发送机主程序流程图

接收机主程序流程图

2、子程序流程图

在有外部中断发生时,表示PS/2接口的键盘将向单片机发送数据,待数据发送完成后,单片机保存数据并由无线发射模块发射出去。

其程序流程图如图12所示。

图发送端外部中断子程序流程图

接收端外部中断子程序流程图

2、发射主程序

#include<

reg52.h>

intrins.h>

#include"

24L01.h"

#defineucharunsignedchar

#defineuintunsignedint

sbitKB_CLK=P3^3;

sbitKB_DATA=P3^2;

uintn=0;

voidDelay_NS(uintx)

{

for(;

x>

0;

x--);

}

voiddelay_nms(unsignedintt)

unsignedinti,j;

for(i=0;

i<

t;

i++)

for(j=0;

j<

120;

j++);

voidSend_Key(uchardat)

uinti;

KB_CLK=0;

Delay_NS(10);

KB_DATA=0;

KB_CLK=1;

while(KB_CLK);

while(!

KB_CLK);

for(i=0;

8;

while(KB_CLK)

_nop_();

KB_DATA=dat&

0x01;

if(KB_DATA)n++;

while(!

KB_CLK)

dat>

>

=1;

switch(n){

case0:

case2:

case4:

case6:

KB_DATA=1;

break;

case1:

case3:

case5:

case7:

KB_DATA=0;

default:

while(KB_CLK)

_nop_();

ucharKey_Scan(void)

uchari,key_temp;

KB_DATA=1;

key_temp=0;

while(KB_CLK);

8;

{

key_temp>

if(KB_DATA)

key_temp|=0x80;

}

returnkey_temp;

unsignedcharkey2asc(unsignedcharKey)

unsignedchartemp=0xff,i;

for(i=0;

49;

if(Key==kbdasciicode[i][0])

temp=kbdasciicode[i][1];

break;

if(temp==0xff)

37;

{

if(Key==kbdcontrolcode[i][0])

temp=kbdcontrolcode[i][1];

break;

}

18;

if(Key==E0startedcode[i][0])

temp=E0startedcode[i][1];

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2