随着无线通信技术的不断发展,近距离无线通信领域出现了蓝牙、rfid、wifi等技术。这些技术不断应用在嵌入式设备及pc外设中。 2.4 ghz无线鼠标键盘使用24~2.483 5 ghz无线频段,该频段在全球大多数国家属于免授权使用,这为无线产品的普及扫清了最大障碍。用户可迅速地进入与世界同步的无线设计领域,最大限度地缩短设计和生产时间,并且具有完美性能,能够替代蓝牙技术。
1 系统硬件结构
2.4 ghz无线鼠标键盘接收器主要实现鼠标、键盘等hid类设备在pc机上的枚举识别过程和接收无线鼠标或键盘发送的数据(包括按键值、鼠标的上下左右移动 等),并将接收到的数据通过usb接口传送给pc机,实现鼠标键盘的无线控制功能。接收器主要由usb接口部分、mcu和无线接收部分组成。系统硬件框图 如图l所示。
1. 1 usb接口部分
系统采用holtek公司生产的8位usb多媒体键盘编码器ht82k95e作为系统核心。鼠标、键盘等hid类设备为低速设备,所以接 收器要能同时实现鼠标和键盘数据同pc机的双向传输。mcu首先必须具有低速的usb接口,并且最少支持3个端点(包括端点o)。综合考虑选用了 ht82k95e作为本系统的主控芯片。
本系统的usb接口部分电路图如图2所示,其中电阻r100、r101、r102、r103、r104和电容c102、c114和c115用于emc。由于鼠标和键盘设备属于从设备,所以应在usb-信号线上加1.5 kω的上拉电阻。
图2
1.2 mcu部分
mcu的复位电路采用由r108和c105组成的rc积分电路实现上电复位功能。上电瞬间,由于电容电压不能突变,所以复位引脚为低电平,然后电容开始缓 慢充电,复位引脚电位开始升高,最后变为高电平,完成芯片的上电复位。ht82k95e微控制器内部还包含一个低电压复位电路(lvr),用于监视设备的供电电压。如果设备的供电电压下降到0.9 v~vlvr的范围内并且超过1 ms的时间,那么lvr就会自动复位设备。
应当注意的是对于该设备的复位电路,还应加1个二极管1n4148,接法如图2中的vd100。如果不加此二极管,设备在第一次使用时能够正常复位,但在以后的使用却无法正常复位,原因是电容中的电荷无法释放掉,而该二极管可以通过整个电路快速释放掉电容中的电荷。
由于nrf24l01的数据包处理模式支持与单片机低速通信而无线部分高速通信,并且nrf24l01内部有3个不同的rx fifo寄存器和3个不同的tx fifo寄存器,在掉电模式下、待机模式下和数据传输的过程中mcu可以随时访问fifo寄存器。这就允许spi接口低速传送数据,并且可以应用于mcu 硬件上没有spi接口的情况下。因此在设计中使用ht82k95e的pa口模拟spi总线与nrf42l01的spi接口通信。
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设备的枚举过程,由于本设计是针对鼠标键盘复合设备的接收器,所以在取完第一次报 告描述符后还需要再取另一个设备的报告描述符。
3 固件设计
固件设计使用ht-ice仿真器,它提供了多种实时仿真功能,包括多功能跟踪、单步执行以及设定断点功能。图5描述了usb无线鼠标键盘 接收器的程序执行流程。在程序中,键盘使用端点1,配置为输入;鼠标使用端点2,配置为输入。都采用usb通信协议中的中断传输。采用“轮询”的工作机 制,轮询间隔为8 ms。
接收器上电后,完成系统的初始化,包括mcu的初始化和收发器的接收模式配置过程。然后系统进入接收数据包的状态中,一旦收到数据包就通过中断的形式通知 mcu有数据包到来,mcu就会通过i/o口模拟spi总线通信过程从nrf24l01中将接收到的数据读出,然后将数据写到相应的usb端点fifo中。主机通过查询的方式读取各端点的数据信息,然后按照usb规范定义的鼠标和键盘的协议产生相应的动作(如鼠标的移动和按键的值)。
无线收发器的初始化过程:1)配置本机地址和要接收的数据包大小;2)配置config寄存器,使之进入接收模式,把ce置高;3)130μs 后,nrf24l01进入监视状态,等待数据包的到来;4)当接收到正确的数据包(正确的地址和crc校验码),nrf24l01自动把字头、地址和 crc校验位移去;5)nrf24l01通过把status寄存器的rx_dr置位(status一般引起微控制器中断)通知微控制器;6)微控制器把数 据从nrf24l01读出;7)所有数据读取完毕后,可以清除status寄存器。nrf24l01可以进入4种主要模式之一。
4 结束语
本系统基于8位单片机hr82k95e和nrf24l01型射频收发器设计了一个用于无线鼠标键盘复合设备的usb无线接收器。该接收器 能够实现鼠标键盘复合设备的全部功能,具有成本低、体积小、通信方向不受制约和通信距离较远等优点,使其替代蓝牙及红外遥控设备成为可能,实践表明,该接 收器具有广泛的应用前景。
智融SW3516系列支持USB PD3.0/PPS,高通QC4+,三星AFC,华为SCP/FCP,PE和SFCP等快充协议
后端太卷?冲测开去了!
RFID与MES集成两项技术怎样结合比较好
旗舰iQOO 3 5G手机发布,骁龙865助力顶尖性能
积塔半导体、吉利科技签署战略合作协议 推动车规芯片创新联合发展
2.4GHz无线鼠标键盘接收器的设计
PA3000多通道功率分析仪的主要特点和指标
区块链对审计工作的影响及有什么优点
富士康对郑州有多重要 鸿海回应郑州园区iPhone出货减30%
将达拉斯电池管理IC与高压电池组结合使用
中国加速对智能网联汽车和自动驾驶行业的政策支持
基于DS2770的电池监控器和充电器参考设计
温度传感器及热敏元件知识
OPPO以线上发布会的形式发布了OPPO K7x新品
模拟电路网络课件 第四十六节:非正弦波信号产生电路
华为发布了“Any Workload,Any Site,One System”超融合基础设施产品新理念
SK海力士宣布与英特尔达成NAND闪存单元协议
环球仪器在电子组装设备生产领域是如何成功的
宏景智驾智能驾驶解决方案让智能驾驶体验更进一步
电阻的标称值(国家标准)