电子说
在电子工程师的日常设计中,远程无钥匙进入(RKE)系统的安全性和可靠性至关重要。Microchip的HCS360 KEELOQ® 跳码编码器,凭借其先进的技术和丰富的特性,成为了RKE系统设计的理想选择。今天,我们就来深入了解一下这款编码器。
文件下载:HCS360-I/P.pdf
相较于HCS300,HCS360在多个方面进行了升级和改进:
HCS360适用于多种远程无钥匙进入应用,包括:
HCS360将32位跳码与28/32位序列号和7/3状态位相结合,生成67位的传输流。加密密钥、序列号和配置数据存储在EEPROM中,该EEPROM具有读取保护功能,确保数据的安全性。每次按钮按下时,同步计数器会递增,导致传输的码字发生变化,实现跳码功能。
| HCS360的引脚包括开关输入、电源、数据输出和LED输出等,具体功能如下: | 名称 | 编号 | 引脚描述 |
|---|---|---|---|
| S0 | 1 | 开关输入0 | |
| S1 | 2 | 开关输入1 | |
| S2 | 3 | 开关输入2 / 编程模式下的时钟引脚 | |
| S3 | 4 | 开关输入3 | |
| VSS | 5 | 接地参考 | |
| DATA | 6 | 数据输出引脚 / 编程模式下的数据I/O引脚 | |
| LED | 7 | LED阴极连接 | |
| VDD | 8 | 正电源电压 |
当检测到按钮按下时,HCS360会唤醒并延迟约10ms进行按钮消抖。然后,同步计数器、判别值和按钮信息会被加密形成跳码。每次传输的跳码都会不同,即使按下相同的按钮也是如此。一个码字在超过64K次传输后才会重复,提供了超过18年的使用时间(按每天10次操作计算)。如果在传输过程中检测到新的按钮按下,会立即复位并重新生成码字。
| HCS360的EEPROM内存组织如下: | 地址 | 字 | 助记符 | 描述 |
|---|---|---|---|---|
| 0 | KEY_0 | 64位加密密钥(字0)LSb’s | 用于创建加密消息的64位加密密钥的最低有效位 | |
| 1 | KEY_1 | 64位加密密钥(字1) | 64位加密密钥的一部分 | |
| 2 | KEY_2 | 64位加密密钥(字2) | 64位加密密钥的一部分 | |
| 3 | KEY_3 | 64位加密密钥(字3)MSb’s | 64位加密密钥的最高有效位 | |
| 4 | SYNC_A | 16位同步计数器A | 用于创建跳码的16位同步值 | |
| 5 | SYNC_B | 16位同步计数器B | 用于与不同接收器同步的16位同步值 | |
| 6 | RESERVED | 保留 | 保留用于未来扩展 | |
| 7 | SEED_2 | 种子值(字2) | 48位种子代码的一部分 | |
| 8 | SEED_0 | 种子值(字0)LSb’s | 48位种子代码的最低有效位 | |
| 9 | SEED_1 | 种子值(字1)MSb’s | 48位种子代码的最高有效位 | |
| 10 | SER_0 | 设备序列号(字0)LSb’s | 设备序列号的最低有效位 | |
| 11 | SER_1 | 设备序列号(字1)MSb’s | 设备序列号的最高有效位 | |
| 12 | CONFIG | 配置字 | 用于存储加密过程中使用的信息和选项配置状态的16位字 |
64位加密密钥用于创建传输到接收器的加密消息,在生产过程中使用密钥生成算法计算和编程。
16位同步计数器用于创建跳码,每次传输后会递增。可以使用单独的同步计数器与不同的接收器保持同步。
48位种子代码在选择种子传输时会被传输,可用于实现安全学习功能或作为不同密钥生成/跟踪过程的一部分。
32位序列号用于标识设备,可选择传输28或32位。序列号对于每个发射器应该是唯一的。
配置字是一个16位的字,用于存储加密过程中使用的信息和选项配置状态,包括调制格式、波特率选择、溢出位、长保护时间、扩展序列号等。
HCS360的码字由50%占空比的前导码、头部、32位加密数据和35位固定数据组成,后面跟着一个保护期。传输格式分为PWM和曼彻斯特两种模式,具体参数根据不同的波特率和调制方式有所不同。
67位的码字由固定代码部分和加密代码部分组成。加密数据由4个功能位、2个用户位、溢出位、独立模式位、8个序列号位和16位同步值生成,提供了高达40亿种变化的代码组合。固定代码数据由VLOW位、2个CRC位、4个功能位和28位序列号组成,如果选择扩展序列号(32位),则不传输4个功能代码位。固定和加密部分的组合使代码组合数量增加到7.38 × 10^19。
码字完成是一个自动功能,确保整个码字能够完整传输,即使按钮在传输完成前释放,也会至少完成两个码字的传输。
长保护时间(LNGRD)用于减少传输的平均功率,通过延长传输之间的保护时间来降低占空比,有助于满足FCC的规定。
CRC位用于检查数据的完整性,可检测所有单比特错误和66%的双比特错误。
自动关机功能可防止按钮长时间按下导致电池耗尽,通过设置超时位来启用或禁用该功能。
VLOW位在每次传输时都会发送,如果工作电压低于低电压触发点(通常为3.8V),则会发送1,提醒接收器发射器电池电量低。
在正常传输时,LED输出在数据传输时为低电平,在保护时间为高电平。当电源电压低于低电压触发点时,LED输出会以约1Hz的频率闪烁。
使用HCS360时,需要对设备进行编程,包括序列号和加密密钥等参数。编程通过串行数据流输入192位数据,存储在内部EEPROM中。编程过程需要按照特定的时序和步骤进行,包括设置PWM线、S3线和S1线,以及时钟输入和数据写入等操作。编程完成后,可以通过读取EEPROM来验证数据的正确性。
发射器必须先被接收器“学习”才能在系统中使用。学习过程包括计算发射器的加密密钥、解密接收到的跳码,并将序列号、同步计数器值和加密密钥存储在EEPROM中。常见的学习策略包括简单学习、正常学习和安全学习。
解码器等待接收传输,将接收到的序列号与EEPROM中存储的学习发射器列表进行比较,确定是否允许该发射器在系统中使用。如果是学习过的发射器,则使用存储的加密密钥对传输进行解密,并通过判别位验证加密密钥的使用是否正确。如果解密有效,则评估同步值,执行相应的操作。
KEELOQ技术采用了一种复杂的同步技术,通过一个3分区的旋转同步窗口来确保系统的安全性和可靠性。同步窗口包括单操作窗口、双操作窗口和阻塞窗口,分别用于处理不同范围内的同步计数器值。
Microchip为HCS360提供了全面的开发支持,包括集成开发环境、编译器、汇编器、链接器、模拟器、仿真器、在线调试器、设备编程器以及低成本的演示/开发板、评估套件和入门套件等。这些工具和资源可以帮助工程师快速开发和调试基于HCS360的系统。
HCS360的电气特性包括绝对最大额定值、直流特性、功率启动和传输时序等。这些特性确保了设备在不同的工作条件下能够稳定运行,满足各种应用的需求。
HCS360提供了PDIP和SOIC两种封装类型,方便用户根据实际需求进行选择。封装标记信息包括客户特定信息、年份代码、周代码和可追溯代码等,便于产品的识别和管理。
Microchip的HCS360 KEELOQ® 跳码编码器以其卓越的安全性、丰富的特性和易于使用的编程接口,成为了远程无钥匙进入系统设计的理想选择。无论是汽车、大门还是其他应用场景,HCS360都能提供可靠的解决方案。作为电子工程师,我们可以充分利用HCS360的优势,设计出更加安全、便捷的RKE系统。你在使用HCS360或其他类似编码器的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。
全部0条评论
快来发表一下你的评论吧 !