您的位置: 嵌入式在线 > 技术中心 > 单片机 > NT系列Keeloq解码芯片的应用──贝能科技PIC微控制器系列专题之四

NT系列Keeloq解码芯片的应用──贝能科技PIC微控制器系列专题之四

2008-01-10      嵌入式在线      收藏 | 打印

       在无线遥控安全系统中,数据通信时通常采用编解码的方式进行加密传输。传统的编解码芯片简单、易用,但编码量少、易重复、密码长度短和仅具有固定编码的方式,从而降低了系统的安全性。

       本文主要介绍了基于Keeloq跳码技术的NT21XX系列解码芯片及其应用方案,结合Microchip公司的滚动编码芯片HCS系列一起使用,在一定程度上大大提高了系统的安全性、可靠性。

       1. 三种编解码方案比较

       编解码电路已经朝着高度集成化和微电脑化方向发展,在单片机应用系统中,编解码电路通常采用如下几种方案设计:

       a. 阻容器件
      

       早期的编解码电路主要采用分立元件组成。例如构成频率编码的RC基本单元,一般由一只晶体管及十只左右的外围元件组成,这种设计电路复杂、外围元件多、占用电路板面积大且可靠性低。

       b. 固定编解码芯片

       传统的固定编解码芯片,如MC145026/145027/AX5327/ VD5027/SC41343、PT2262/2272等已经在防盗、安全等系统中得到广泛的应用。这类芯片工作时,系统每次发送相同的数据流,一旦用户信号出现,第三方面只需通过捕捉设备,即可在瞬间取得合法的身份识别码,第三方也可以使用编码扫描设备,主动攻击解码芯片,使系统的可靠性大大降低。

       c. 基于Keeloq跳码技术编解码芯片

       NT21XX系列芯片是针对滚动码无线遥控安全系统开发的,同时配合Microchip公司的滚动编码芯片HCS系列共同使用。通过不同生产商的产商代码、相同厂商、不同用户的序列号区分遥控器编码重码的难题,在Keelog技术下同一遥控器发送重复码的概率可保证18年不重复,以此防止密码破译。
与固定码解码芯片存在的容量瓶颈和易被破译的劣势相比,NT21XX系列是最为理想的升级IC,使用时与PT2272一样简单。典型的RKE应用系统框图如图1所示。

图1 RKE系统框图

       2.基于KEELOQ算法的编解码过程

        Microchip公司以KEELOQ技术为基础开发的滚动码系统专用芯片中,HCS300是较典型的一款。它是一8引脚的编码IC芯片,带有四个按键接口,能实现15位的功能/命令码,同时集成了KEELOQ算法和其他一些功能,内置192 bits EEPROM,用于存放EN_KEY(加密密钥)、SN(序列号)、SYNC(同步码)、SEED(种子码)等。其中,序列号用于标识不同的对象;加密密钥用于对发送的数据进行加密,增加破译的难度;同步计数器用于抗截获,当发送数据时同步计数器值同步更新,因此每次发送的数据都不一样;种子码用于安全学习时参与加密密钥的生成。

        HCS300工作时,当有按钮按下,HCS300将发送一个由加密编码和固定编码组成的66位编码字,其中,32位加密编码数据由4个按钮位、12个识别位和16个同步计数值通过KEELOQ算法和密锁生成,34位固定编码数据由2个状态位、4个按钮位和28位序列号组成。HCS300发送66位编码字即编码器的过程如图2 所示。

图2 发送编码字过程

        主机(即解码器)接收到发送的信号后,首先对比序列号,然后利用学习过程中得到并存储的加密密钥对接收的数据进行解密,解密完成后,检查同步计数器是否匹配,确认匹配后,最后再处理接收到的按键信令,并根据接收到的按键信息做出相应的动作,其操作过程如图3所示。其中同步计数器比较过程采用了keeloq技术专利范围的 “双操作”窗口这项复杂的同步技术。


 图3 接收器的基本操作过程

        3.  NT21XX系列解码芯片

        基于Keeloq跳码技术的NT21XX系列解码芯片,根据MCSIMDEC和MCDEC解码模式可分为NT217X和NT218X两种类型。它具有内置的EEPROM数据存储空间,无需外接EEPROM即可存储15/6个遥控编码器,IC内部具有降压复位功能,可确保EEPROM的数据不丢失。EEPROM的数据可以直接编程,且读保护,只有在自动擦除和编程操作完成后,才能对其中的数据进行校验,可防止获取密锁或对同步值进行操作。NT21XX系列解码芯片可以比较解密后的按键信息和无加密的按键信息,提高系统的容错能力;具有4位数据输出,可定制15种功能输出;内部含有4MHz的内部RC振荡器;还具有自动波特率调整等功能。
在NT21XX系列芯片中,NT2174/ NT2184为暂存脉冲输出,数据口输出脉冲后保持一定时间后回到低电平,数据输出格式如图4所示;NT2175/NT2185为锁存电平输出,输出电平保持到下次新数据输出为止,数据输出格式如图5所示。 


       图4 NT2174/NT2184数据输出格式      

图5 NT2175/NT2185数据输出格式

        4. 应用方案

        本节主要以NT21XX系列芯片在遥控车库门系统中的应用为例,介绍NT217X系列解码芯片设计方案如何应用于各种无线遥控系统中。

        在车库门附近的任何位置采用无线便携式遥控器控制门的开与关,系统应用方案的结构框图如图6所示,能实现开门、关门、在门接近终点时减速靠近终点功能。其中,开关门过程由I/O口通过驱动器控制继电器实现,达到控制执行装置。完成这一动作过程,同时采用检测和放大反馈电路控制接近终点时的速度。

                                             图6 遥控车库门系统应用方案

       Microchip公司的HCS编码芯片采用纳瓦低功耗技术设计,常用于电池供电的手持设备中,同时具有低电压检测功能。NT21XX系列解码芯片的VT引脚与PIC16F630微控制器的外部中断管脚相连,4个输出端分别与MCU的4个I/O口相连。NT21XX正确解码接收数据后,可通过VT引脚通知MCU读取I/O口值,然后执行相应的操作。

       系统将一个有线控制开关装于室内,用户在室内时即可直接按开关按扭控制开/关门。系统还可以采用有线密码装置,用户在室外即可以通过有线密码装置,输入密码控制逻辑单元开门。其中,液晶显示可以为用户提供直观的人机交互界面,同时本系统还预留I/O口方便用户设计其它自定义功能。

       系统的软件设计采用模块化设计,其主要任务是等待控制命令,在接到命令后控制执行相应的动作,软件设计的主流程图如图7所示。

图7 主程序流程图     

                                             图8 HCS301编码器接线图

       系统软件由以下4部分功能模块构成:

       ①初始化模块:设定各I/O口状态,配置系统各运行参数,中断优先级配置,开中断等。
       ②控制系统模块:控制车库门的开与关,检查接近终点时,执行减速,终点制动等。
       ③通信模块:解析接受到的命令信号,调用相应的控制模块,与有线密码器进行通信,根据有线密码器的控制命令进行密码比较和修改,并调用相应的控制模块。
       ④人机交互模块:驱动程序,显示当前系统的状态等。

       5. NT217X系列学习套件

       贝能科技公司推出的NT21XX系列学习套件是针对各种RKE、安防报警系统、车库门系统等无线遥控应用系统,可以加快用户的学习和开放过程。学习套件由编码器和解码器两部组成。编码器采用HCS301编码芯片实现,电路接线图如图8所示,编码信号经PWM连接的调制模块调制为434MHz信号发送出去。解码电路由NT21XX系列解码芯片实现,电路接线图如图9所示,解码芯片接收到信号后,经KEELOQ算法解密,若解密正确则执行相应的操作。本套件由LED指示灯模拟信号动作过程。


 图9 NT217X解码器接线图

       6. 结 语

       采用内嵌KEELOQ加密算法和非易失性、同步值的NT21XX系列解码芯片(配对于HCS系列编码器使用),使设计系统具有极高的保密性。文中的遥控车库门系统设计方案为使用无线遥控编解码芯片的用户提供参考,可广泛应用于各种安全保密系统中,如报警系统、防盗系统、住宅、办公楼、汽车及车库等门卫管理系统。

本文来源:贝能科技有限公司    作者:林杰
评一评已有 0 位网友对此文发表了看法。  我也来评一下

验证码:  看不清?换一张