1.3 基站(车身)模块设计
基站模块由微控制器、高频接收电路、低频发射电路、液晶显示电路及总线传输电路组成。基站模块的微控制器采用微芯公司的PIC18F4680,工作频率为40 MHz。该芯片拥有64 KB的Flash存储器,1 KB的EEPROM存储器及3.3 KB的SRAM存储器;还拥有1个SPI接口、1个I2C接口、1个LIN接口及1个ECAN接口,完全可以满足与汽车控制器进行信息交换的要求,同时该芯片具有丰富的I/O资源,为配置液晶屏提供了可能,让车主能够及时了解基站模块的工作情况。本文着重介绍高频接收电路和低频发射电路的设计,其电路如图4、图5所示。
高频接收电路采用安阳市新世纪电子研究所的一款超再生接收模块J04V。J04V是一款低功耗、小体积接收模块,采用SMT工艺,性能稳定,具有较好的灵敏度及性价比,可以广泛应用于需要长期处于接收状态的遥控报警及单片机数据传输系统。J04V的接收频率为433.92 MHz;工作电压为3 V,工作电流只有0.2 mA,功率极低;外形尺寸为10 mm×23 mm,并且不需要外接天线,能够满足本系统的设计要求。超再生模块J04V集成度高,接线简单,接收到的高频数字信号通过OUT引脚直接传送到PIC18F4680的RB4引脚,触发中断,中断程序进行解码操作,将编码信号还原成原始数据,从而通过总线控制相关指令执行机构动作。
低频发射电路由一个TC4422功率放大器和一个LC串联谐振电路组成。在PKE系统中,低频信号的发射和接收通过电磁感应进行通信,当低频功放驱动器的电流为500 mA左右时可以获得较好的传送距离,而为了提高输出回路品质因数Q,低频功放驱动器的输出阻抗必须在10 Ω以下,因此选用TC4422功率放大器。该电路可以产生一个基于PWM输出的载波信号。TC4422放大来自微控制器的125 kHz低频信号的功率,通过由天线L1、电容C2、C3、C4组成的LC串联谐振电路后,低频方波脉冲将变成正弦波[3]。当LC串联谐振电路的谐振频率与PWM信号的频率一致时,通过L1的负载电流最大,从而产生很强的磁场,此时发送信号强度最大。
2 系统软件设计
2.1 Keeloq编码的实现
Keeloq实际上是一个“ASIC”的特别设计,内含加密及解密技术,适用于遥控或命令辨别的应用场合,如安全锁、车库门遥控、秘密通信、软件保护等。Keeloq加密算法其实是一种非线性的数学推算公式,当输入数据经过该算法加密后,输出数据对输入数据而言就是唯一的。Keeloq核心组成元件分别为制造商代码、序号、编码密码。制造商代码为由制造商决定的不可泄露的原始密码,用来辨别不同制造商之间的产品,并且应答器与基站的制造商代码必须相同才能互相识别。序号的作用是区别不同的应答器,每个应答器都有自己的一个序号。在标准加密模式下,编码密码是由制造商代码与序号利用解码算法共同产生的,用于产生跳码,储存于微控制器的EEPROM中。Keeloq编码过程如图6所示。
每当应答器的按键按下时,PIC16F639便将一组66 bit的加密资料以PWM编码的方式通过高频发射器传送出去。这66 bit的加密资料包含34 bit的固定码与32 bit的跳码。其中34 bit的固定码包括28 bit的序号、4 bit的功能键以及2 bit的状态位。4 bit功能键表明了应答器中哪一个按键已被车主按下,而基站必须根据不同的功能键数值执行相应的命令。另外,Keeloq编码加密算法利用64 bit编码密码、16 bit同步计数值、10 bit识别码、4 bit功能键、2 bit溢位指示通过非线性数学推算公式生成32 bit的跳码[4],而同步计数值在每一次按键按下以后将自动加1并存入EEPROM中,这将使下次编码加密时形成一组新的跳码,大大提高了安全性。