远程无钥匙进入系统的方案设计
摘要 描述RKE系统的工作原理及系统在功耗、稳定性、RKE发送和接收范围等性能设计上的独到之处;使用Freescale公司的高性能、小封装微处理器MC9RS08KA2,结合Maxim公司的收发IC设计射频数据处理前端,Microchip公司的专利技术Keeloq的滚动码编码芯片实现安全加密机制;详细地给出低成本的发送和接收部分的硬件原理图和软件设计参考流程图。
关键词 RKE系统 MC9RS08KA2 MAX7044 MAXl473 HCS300 DES
当今70%的汽车商选用RKE(Remote Keyless En-try,远程无钥匙进入)系统,或将其作为一个标准。RKE系统主要由按键加密发送器和车内内置接收器组成,结构框图如图1所示。它们主要用在汽车门控制、无线传感器、汽车无线胎压监测TPMS(Tire Pressure Monitor Sys-tem)等方面,使用的频率是315MHz(美国和日本地区)、蝎3.92Hz(欧洲地区)。欧洲同时开放了868 MHz频率来适应RKE系统的增长需求。
RKE系统的用户可以通过钥匙链发送数据来打开和关闭汽车门。图l中,用户可以按下按键开关来发起与接收机的通信,通过一串64~128位长度的数据流进行发送器和接收器的会话。该数据流包括前引导码、命令码和一串加密滚动码。通信速率通常选用2~20 kHz之间,采用ASK调制方式,主要为了延长发送部分钥匙链中电池的使用寿命。
1 系统设计
1.1 功率设计
设计中主要考虑的是低电流消耗情况下的高可靠性、系统的成本以及发送器和接收器的寿命。对于发送器,电池寿命在3~5年是可以满足要求的。电池寿命对于接收器件也很重要,因为接收器件必须总是在线侦听发送端数据,典型的电流要求不超过1mA。一个设计方法是,在一定时间内,接收端保证能够检测到有效的发送信号;为了最大限度地节约电量,接收器在其他的时间睡眠。
1.2 安全性设计
系统的安全性也是一项主要考虑的因素。通过采用Microchip公司专为RKE系统设计的使用DES算法的安全密钥芯片HCS300来实现系统数据的安全加密,防止发送的数据被恶意盗取拷贝;同时在接收端使用MC9RS08KA2进行解密和继电器控制。
HCS300的操作电压为2.0~6.3V,是一个可编程28位串行码、64位加密键值、66位发送长度、32位跳频码、4位按键码、2位状态码,具有键值读保护措施的芯片。
DES编码、解码图如图2和图3所示。
16位的同步计算器,在每次发送代码后都要发生改变。它随按键的次数而增加。根据DES算法加密,在每次发送的代码中,由于同步计数器的变化而使得每次发送的代码有大于50%的部分不一样。图2说明在编码过程中如何使用HCS300的内部可编程EEPROM,一旦编码器检测有按键按下,它就立即读键值,同时刷新同步计数器。按键和同步计数器经过加密算法处理,输出数据是32位的加密信息。携带按键信息的32位代码和串行码组成了整个发送码,将被接收部分接收到。
解码部分必须先学习发送端的数据码,学习包括计算发送端的键值、解密32位的加密信息和可编程阵列中的串行码、同步计数器以及键值。在正常的操作模式中,每次接收到的有救格式的信息都被计算。串行码用于表示发送码是否被学习过。如果发送码被学习过,那么它的信息被解密和同步计数器值校验,最后接收系统执行按键操作请求。图3表示了接收部分接收到的信息和它的可编程EEPROM(设计中使用AT24C02)中存储信息的关系。
1.3 射频收发器件和微处理器特性
为了保证系统能够在较低电流消耗的情况下,有较高的发射功率和接收灵敏度,系统选用了Maxim公司的MAXl473接收芯片和MAX7044发射芯片。
MAX7011发射芯片工作电压为+2.1~6.0V,7.7mA的低工作电流,250μs的启动时间。通信速率能达到100 kbps,小封装3 mm3 mm,8引脚sOT23封装。它消除了基于SAW发送器设计的问题;采用晶体结构,提供了更大的调制深度和快速的频率响应机制;降低了温度的影响,温度范围可达一40~125℃。
MAXl473接收芯片采用3.3V锂电池供电,250μs启动时间,小于2.5μA的待机模式工作电流,-114 dBm的灵敏度;采用TSSOP 28引脚封装设计。
MC9RS08KA2作为Freescale公司新推出的一款集成多个功能的高性价比MCU,具有键盘中断和高达20MHz的内部时钟.以及8位模计数器,2KB Flash空间,63字节RAM;同时有等待和3种停止模式,满足系统的超低功耗设计(设计中电流小于1μA),以及简易的6引脚BDM编程调试接口,便于系统的实时升级。设计中采用6引脚DFN精密小引脚封装,满足系统的小体积要求。
1.4 硬件设计图
按键DES硬件加密部分电路如图4所示。发送部分射频前端电路如图5所示。
接收部分射频前端电路如图6所示,元器件参数如表1所列。接收部分微处理器控制电路如图7所示。
1.5 软件设计
编码加密操作流程如图8所示。
如果有按键按下,HCS300将被唤醒,同时通过10ms延时消抖。同步计数器、描述信息、按键信息被编码形成跳频码。每次发送跳频码都会不一样,即便是同一个按键按下,在64K次按键过程中发送的跳频码也不会发生重复,因此在较长的时间内,按键密钥信息不会被盗取。如果在发送的过程中检测到新的按键按下,那么将会立即复位,而且当前的代码将不会继续执行;离开按键后,对代码字是没有影响的,除非没有按键继续保持按下状态,在任何情况下传输代码都会完成,同时系统下电。
接收部分解码解密流程如图9所示。
上电后,MC9RS08KA2开始判断系统是否有I/O中断产生。如果没有,则系统进入低功耗睡眠模式(停止模式3);如果有I/O中断产生,那么进入中断,唤醒MCU,同时进行软件DES算法解密。如果解密不成功,则继续接收数据;如果解密成功,则执行相应的继电器操作(如开/关门等),然后系统继续进入睡眠状态。
2 结论
通过结合多家外围器件和微处理器件,利用Micro-chip KEELOQ芯片的安全性,Maxim的射频芯片的可靠性、稳定性和Freescale微处理器的高集成度及性价比,整合各家优势,提高了系统的整体性能。通过实际运行,系统达到了预先设计的要求。本次没计只使用了2个按键,根据需要可以外扩功能按键达到15个,用于实现不同的控制信息要求。设计人员可以根据自行需要进行相应的扩展。
评论