深入解析Microchip HCS361 KEELOQ® 代码跳变编码器
在当今的电子安全领域,代码跳变技术为我们提供了强大的安全保障。Microchip的HCS361 KEELOQ® 代码跳变编码器就是这样一款卓越的产品,下面我们就来详细了解一下它。
文件下载:HCS361-I/P.pdf
一、产品概述
HCS361是一款专为安全远程无钥匙进入(RKE)系统设计的代码跳变编码器。它采用KEELOQ® 代码跳变技术,具备高安全性、小封装尺寸和低成本的特点,非常适合单向远程无钥匙进入系统和访问控制系统。其典型应用包括汽车RKE系统、汽车报警系统、汽车防盗器、大门和车库门开启器、身份令牌以及防盗报警系统等。
二、产品特性
(一)安全特性
- 可编程参数:支持28/32位序列号和64位加密密钥的编程,每个加密密钥都受到读保护,增强了数据的安全性。
- 独特传输:每次传输的代码都是唯一的,传输代码长度为67位,其中包括32位跳变代码和35位固定代码(包含28/32位序列号、4/0位功能代码、1位状态和2位CRC),有效防止代码被窃取和重传。
(二)操作特性
- 宽电压范围:可在2.0 - 6.6V的电压下稳定工作。
- 多按钮输入:提供四个按钮输入,支持15种功能,还可选择波特率。
- 自动完成功能:具有自动代码字完成功能,确保代码完整传输。
- 电池低电量提示:能够将电池低电量信号传输给接收器。
- 非易失性同步数据:保证系统在断电后仍能保持同步。
- 调制方式:支持PWM和VPWM调制。
(三)其他特性
- 编程接口:拥有易于使用的编程接口,方便用户进行参数设置。
- 片上资源:集成了EEPROM、振荡器和定时组件,减少了外部组件的使用。
- 内部电阻:按钮输入具有内部下拉电阻,简化了电路设计。
- 电流限制:LED输出具有电流限制功能,保护设备安全。
- 组件数量少:整体设计所需的组件数量最少,降低了成本和设计复杂度。
(四)增强特性
相较于HCS300,HCS361具有一些增强特性,如48位种子(而不是32位种子)、2位CRC用于错误检测、28/32位序列号可选、两种种子传输方法、PWM和VPWM调制、VPWM模式下的唤醒信号以及IR调制模式等。
三、系统概述
(一)关键术语
在了解HCS361之前,我们需要掌握一些关键术语,如RKE(远程无钥匙进入)、代码跳变、代码字、传输、加密密钥、编码器、加密算法、解码器、解密算法、学习以及制造商代码等。这些术语是理解HCS361工作原理的基础。
(二)工作原理
HCS361通过非线性加密算法生成32位跳变代码,并将其与28/32位序列号和7/3状态位组合成67位传输流。加密密钥、序列号和配置数据存储在EEPROM阵列中,该阵列不可通过外部连接访问,且数据可编程但受读保护,只有在自动擦除和编程操作后才能验证数据,有效防止密钥被访问或同步值被篡改。
(三)学习过程
在系统中使用发射器之前,接收器必须先“学习”发射器。学习过程包括计算发射器的适当加密密钥、解密接收到的跳变代码,并将序列号、同步计数器值和加密密钥存储在EEPROM中。常见的学习策略有简单学习、正常学习和安全学习。
(四)接收器操作
接收器接收到消息后,会首先检查序列号是否来自已学习的发射器。如果是,则使用存储的加密密钥对消息进行解密,并验证同步计数器。最后,检查按钮状态以确定请求的操作。
四、设备操作
HCS361的使用非常简单,只需添加按钮和RF电路即可作为安全应用中的发射器。当检测到按钮按下时,它会唤醒并进行约10ms的按钮去抖。同步计数器、判别值和按钮信息将被加密形成跳变代码,每次传输的跳变代码都会改变,且一个代码字在超过64K次传输后才会重复,基于每天10次操作,可提供超过18年的使用时间。如果在传输过程中检测到新按钮被按下,会立即重置并生成新的代码字。
五、EEPROM内存组织
HCS361包含192位(12 x 16位字)的EEPROM内存,用于存储加密密钥信息、同步值等。具体包括64位加密密钥(KEY_0 - KEY_3)、16位同步计数器(SYNC_A, SYNC_B)、48位种子代码(SEED_0, SEED_1, SEED_2)、32位编码器序列号(SER_0, SER_1)以及配置字(CONFIG)。配置字包含多个选项位,用于选择调制格式、波特率、位格式、同步脉冲调制、溢出位等,这些选项位的不同组合可以满足不同的应用需求。
六、传输字
(一)传输格式
HCS361的传输由前导码、头部、加密数据和固定数据组成,实际数据为67位,包括32位加密数据和35位固定数据。每次传输后会有一个保护期,以确保数据的完整性。加密部分提供多达40亿种变化的代码组合,非加密部分包括CRC位、VLOW位、功能位和28/32位序列号,两者结合使组合数达到(1.47 ×10^{20})。
(二)代码字组织
代码字由固定代码部分和加密代码部分组成。加密数据由4个功能位、2个用户位、溢出位、独立模式位、8个序列号位和16位同步值生成。非加密代码数据由VLOW位、2个CRC位、4个功能位和28位序列号组成。如果选择扩展序列号(32位),则4个功能代码位将不被传输。
七、特殊功能
(一)代码字完成
代码字完成是一项自动功能,确保即使在按钮释放之前传输未完成,整个代码字也能被完整传输,并且至少完成两个代码字的传输。如果在传输过程中激活了另一个按钮,当前传输将被中止,并使用新的按钮信息生成新的代码。
(二)空白交替代码字
通过选择空白交替代码字(BACW)功能,可以减少传输的平均功率,从而满足FCC规则对传输功率的限制。该功能允许用户在传输长度较短时传输更高幅度的信号,有效防止连续传输,有助于发射器设备获得FCC批准。
(三)CRC(循环冗余校验)位
CRC位用于检查数据的完整性,可检测所有单比特错误和66%的双比特错误。在计算CRC时,需要注意电池电压在VLOW跳变点附近可能会导致CRC计算错误,此时可以重新计算相反VLOW值的CRC。
(四)自动关闭
自动关闭功能可防止因按钮意外长时间按下而导致设备耗尽电池电量。该功能可以通过设置或清除超时位来启用或禁用,超时时间约为25秒。
(五)VLOW:电压低指示
VLOW位在每次传输时都会发送,如果工作电压低于低电压跳变点(通常为25°C时的3.8V),VLOW位将为1,接收器可据此向用户提示发射器电池电量低。
(六)LED输出操作
在正常传输期间,LED输出在数据传输时为低电平,在保护时间为高电平。当电源电压低于低电压跳变点时,LED输出将以约1Hz的频率闪烁。
八、编程HCS361
在使用HCS361之前,用户需要将一些参数(如序列号和加密密钥)编程到设备中。编程周期允许用户以串行数据流的形式输入所有192位数据,并将其存储在EEPROM中。编程通过强制PWM线为高电平启动,S0在整个编程周期内保持低电平,S1根据内存映射的LS位进行设置或清除。编程完成后,可以通过读取EEPROM来验证数据。
九、集成到系统中
(一)学习发射器到接收器
发射器必须先被接收器“学习”才能在系统中使用。学习过程中,接收器需要存储发射器的序列号、当前同步计数器值和加密密钥。常见的学习策略有多种,但需要注意避免侵犯相关专利。
(二)解码器操作
解码器等待接收传输,接收到的序列号将与EEPROM表中的已学习发射器进行比较。如果来自已学习的发射器,则使用存储的加密密钥对传输进行解密,并通过判别位验证加密密钥的使用是否正确。如果解密有效,则评估同步值。
(三)与解码器同步
KEELOQ技术采用了一种复杂的同步技术,通过一个三分区、旋转的同步窗口来确保系统的安全性。该窗口包括一个16码的“单操作”前向窗口、一个32K码的“双操作”(重新同步)窗口和一个“阻塞窗口”。这种同步方法可以有效阻止无效传输,同时在发射器意外激活时实现透明的重新同步。
十、开发支持
Microchip为HCS361提供了全面的开发支持,包括集成开发环境(MPLAB® IDE Software)、编译器/汇编器/链接器、模拟器、仿真器、在线调试器、设备编程器以及低成本的演示/开发板、评估套件和入门套件等。这些工具和资源可以帮助工程师更高效地进行开发和调试。
十一、电气特性
HCS361的电气特性包括绝对最大额定值、直流特性、电源启动和传输定时要求以及各种调制模式下的定时参数等。这些特性为工程师在设计电路时提供了重要的参考依据。
十二、封装信息
HCS361提供PDIP和SOIC两种封装类型,每种封装都有详细的标记信息和尺寸规格。了解这些封装信息有助于工程师选择合适的封装形式,并进行正确的布局和焊接。
Microchip的HCS361 KEELOQ® 代码跳变编码器以其高安全性、丰富的功能和易于使用的特点,为远程无钥匙进入系统和访问控制系统提供了一个理想的解决方案。在实际应用中,工程师可以根据具体需求灵活配置和使用该编码器,以实现安全、可靠的系统设计。你在使用HCS361的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。
-
Keeloq
+关注
关注
0文章
15浏览量
11775
发布评论请先 登录
深入解析Microchip HCS361 KEELOQ® 代码跳变编码器
评论