- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
2.4 GHz无线鼠标键盘接收器的设计
1.3 无线接收部分
无线接收部分电路图如图3所示。由于nRF24L01是工作于2.4 GHz的高频元件,因此,系统的PCB设计的好坏,直接影响系统的性能。在设计时,必须考虑到各种电磁干扰,注意调整电阻、电容和电感的位置,特别要注意 电容的位置。nRF24L01模块的PCB为双面板,底层不放置任何元件,在地层,顶层的空余地方(除天线衬底之外)都覆上铜,并通过过孔与底层的地相 连。
2 协议分析
2.1 nRF24L01无线通信协议
2.4 GHz无线通信协议分为3层:物理层、数据链路层和应用层。物理层包括GFSK调制和解调器、接收和发送滤波器、射频合成器、SH接口和电源管理,主要完 成数据的调制解调、编码解码、FHSS跳频扩频和SPI通信。数据链路层主要完成解包和封包过程。该协议有2种基本的封包:数据包和应答包。数据包格式如 表1所示。
前导码用来检测0和1,nRF24L01在接收模式下去除前导码,在发送模式下加入前导码。地址内容为接收机地址,地址宽度是3、4或5字节,可以对接收通道和发送通道分别进行配置,接收端从接收到的数据包中自动去除地址。
封包控制域的格式如表2所示。数据长度标志位只有在动态数据长度选项使能时才有效,6位可以表示传输的数据域字节数从0~32字节。标志位用来检测接收到 的数据包是新的还是重发的。自动应答标志位表示这个封包是否需要自动应答。封包可以采用1或2字节的CRC校验。对于应答包来说,数据域是一个可选项,但 是如果使用该选项的话应该使能动态数据长度特性。应用层按照设计需要可以是键盘和鼠标等HID类设备。
这两种封包在应用层协议中的用途不同。数据包主要用于传送发射端和接收端之间的数据信息,应答包则是在自动应答功能选项被使能之后才会出现的,以便于发送 端检测有无数据丢失。一旦数据丢失,则通过自动重发功能将丢失的数据恢复。增强型的ShockBurst模式可以同时控制应答和重发功能而无需增加MCU 工作量。
在SCK时钟控制下,数据在主从设备间传输,而且严格地遵守SPI通信的时序。作为接收端(PRX),nRF24L01通过2.4 GHz无线通信技术与发射端(PTX)进行数据交换。收发器接收到数据后,通过中断nIRQ通知MCU已接收到数据,可以进行读入操作,然后MCU通过 MISO数据传输线读入数据。nRF24L01在接收到数据之后,会自动切换到发送模式发送应答信号给发射端(PIX),这样就完成了一次数据传输过程。
2.2 USB设备枚举过程
USB的枚举过程是USB规范中一个非常重要的"动作"或"过程"。这个动作将会让PC知道何种USB设备剐接上以及其所含的各种信息。若要完成一个设备 枚举的过程,需要执行诸多的数据交换以及设备请求。图4描述了一个HID设备的枚举过程,由于本设计是针对鼠标键盘复合设备的接收器,所以在取完第一次报 告描述符后还需要再取另一个设备的报告描述符。
1 2 3