深入解析Microchip HCS500 KEELOQ? 代碼跳變解碼器
在電子工程師的日常工作中,安全可靠的遠程無鑰匙進入(RKE)系統(tǒng)設(shè)計是一項重要任務(wù)。Microchip 的 HCS500 KEELOQ? 代碼跳變解碼器為這一領(lǐng)域提供了強大的解決方案。今天,我們就來深入了解一下這款解碼器的特點、工作原理和應(yīng)用。
文件下載:HCS500-I/P.pdf
一、HCS500 概述
1.1 產(chǎn)品特性
HCS500 具有諸多出色的特性,使其在安全領(lǐng)域表現(xiàn)卓越。
- 安全性:它采用加密存儲制造商代碼和加密密鑰的方式,增強了系統(tǒng)的安全性。同時,支持最多學(xué)習(xí)七個發(fā)射器,并運用 KEELOQ 代碼跳變技術(shù),以及具備正常和安全學(xué)習(xí)機制,有效防止代碼被破解。
- 操作特性:工作電壓范圍為 3.0V - 5.5V,內(nèi)部集成振蕩器,還能自動檢測比特率,適應(yīng)不同的工作環(huán)境。
- 其他特性:作為獨立解碼器芯片組,配備外部 EEPROM 用于存儲發(fā)射器信息,具有同步串行接口和 1Kbit 用戶 EEPROM,采用 8 - Pin PDIP/SOIJ 封裝,方便進行電路設(shè)計。
1.2 典型應(yīng)用
HCS500 的應(yīng)用范圍廣泛,涵蓋了汽車遠程進入系統(tǒng)、汽車報警系統(tǒng)、汽車防盜器、門禁和車庫開門器、電子門鎖、身份令牌以及防盜報警系統(tǒng)等領(lǐng)域,為各種安全應(yīng)用提供了可靠的保障。
二、系統(tǒng)概述與關(guān)鍵術(shù)語
2.1 關(guān)鍵術(shù)語解釋
在理解 HCS500 的工作原理之前,我們需要了解一些關(guān)鍵術(shù)語。
- RKE:即遠程無鑰匙進入,是一種常見的車輛或門禁系統(tǒng)的進入方式。
- 代碼跳變:每次傳輸時,代碼在系統(tǒng)外部看起來會不可預(yù)測地變化,增加了安全性。
- 代碼字:按鈕激活時重復(fù)傳輸?shù)臄?shù)據(jù)塊。
- 傳輸:由重復(fù)的代碼字組成的數(shù)據(jù)流。
- 加密密鑰:用于加密和解密數(shù)據(jù)的 64 位唯一秘密數(shù)字。
- 編碼器:生成和編碼數(shù)據(jù)的設(shè)備。
- 加密算法:使用加密密鑰對數(shù)據(jù)進行加擾的方法。
- 解碼器:對從編碼器接收的數(shù)據(jù)進行解碼的設(shè)備。
- 解密算法:使用相同的加密密鑰對加密數(shù)據(jù)進行解密的方法。
- 學(xué)習(xí):接收器計算發(fā)射器的加密密鑰,解密接收到的跳變代碼,并將序列號、同步計數(shù)器值和加密密鑰存儲在 EEPROM 中。
2.2 HCS 編碼器概述
HCS 編碼器在使用前需要加載一些重要參數(shù),包括生產(chǎn)時生成的加密密鑰、16 位同步計數(shù)器值和 28 位序列號。制造商在生產(chǎn)時為每個編碼器編程序列號,通過“密鑰生成算法”生成加密密鑰。同步計數(shù)器是代碼字變化的基礎(chǔ),每次按下按鈕時,同步計數(shù)器會遞增,導(dǎo)致傳輸?shù)拇a字中超過 50% 的比特發(fā)生變化。
三、解碼器操作
3.1 學(xué)習(xí)發(fā)射器
在發(fā)射器和接收器協(xié)同工作之前,接收器需要“學(xué)習(xí)”并存儲發(fā)射器的相關(guān)信息,包括序列號的校驗值、加密密鑰和當(dāng)前同步計數(shù)器值。同時,解碼器還需將制造商代碼存儲在受保護的內(nèi)存中。HCS500 有七個內(nèi)存插槽,最多可存儲七個發(fā)射器。學(xué)習(xí)過程通過向解碼器發(fā)送 ACTIVATE_LEARN 命令啟動,按照特定的步驟進行,如激活發(fā)射器兩次等。學(xué)習(xí)過程中,解碼器會進行一系列檢查,確保傳輸?shù)挠行浴?/p>
3.2 代碼驗證
解碼器等待傳輸并檢查序列號,判斷是否為已學(xué)習(xí)的發(fā)射器。如果是,則對傳輸?shù)拇a跳變部分進行解密,并使用判別值驗證解密是否有效。最后,評估同步計數(shù)器值,確保其在有效范圍內(nèi)。驗證步驟包括搜索 EEPROM 匹配序列號校驗值、解密跳變代碼、比較判別值和序列號的低 10 位、檢查同步計數(shù)器值是否在同步窗口內(nèi)等。
3.3 同步技術(shù)
KEELOQ 技術(shù)采用了復(fù)雜的同步技術(shù),通過 3 - 分區(qū)旋轉(zhuǎn)同步窗口來確保系統(tǒng)的安全性。當(dāng)傳輸被認證時,執(zhí)行相應(yīng)功能并更新同步計數(shù)器值,旋轉(zhuǎn)同步窗口。同步窗口包括單操作窗口(16 個代碼)、雙操作(重新同步)窗口(最多 32K 個代碼)和阻塞窗口,有效阻止無效傳輸。
四、與微控制器接口
4.1 有效傳輸消息
解碼器通過將數(shù)據(jù)線拉高最多 500ms 來通知微控制器接收到有效傳輸。微控制器通過將時鐘線拉高進行確認,然后解碼器將數(shù)據(jù)線拉低,微控制器開始從 HCS500 時鐘輸出數(shù)據(jù)流,包括起始位、狀態(tài)位、功能代碼、停止位、塊指示和傳輸數(shù)據(jù)等。
4.2 命令模式
微控制器通過特定的命令模式與解碼器進行通信,包括命令激活、實際命令、訪問地址和數(shù)據(jù)。解碼器使用碰撞檢測來防止與微控制器發(fā)生沖突,確保通信的穩(wěn)定性。命令激活時間根據(jù)解碼器的狀態(tài)而定,不同的命令有不同的操作和時序要求,如讀取和寫入用戶 EEPROM、激活學(xué)習(xí)、擦除所有發(fā)射器等。
4.3 獨立模式
HCS500 還可以在獨立模式下使用。當(dāng)接收到有效傳輸時,它會將數(shù)據(jù)線激活最多 500ms,可用于驅(qū)動繼電器電路。通過連接按鈕到 CLK 輸入,可以激活學(xué)習(xí)或擦除所有命令,通過連接 LED 到 DATA 輸出線提供用戶反饋。
五、解碼器編程
5.1 系統(tǒng)內(nèi)存編程
解碼器使用 2K 的 24LC02B 串行 EEPROM,分為系統(tǒng)內(nèi)存和用戶內(nèi)存。在使用解碼器之前,需要對系統(tǒng)內(nèi)存中的 64 位制造商代碼和解碼器配置字節(jié)進行編程。這些內(nèi)存位置受讀保護,需要使用編程命令在設(shè)備上電時進行寫入。
5.2 配置字節(jié)
配置字節(jié)用于在初始化時配置解碼器,包括學(xué)習(xí)模式選擇(正常學(xué)習(xí)或安全學(xué)習(xí))、算法選擇(KEELOQ 解密算法或 XOR 算法)和重復(fù)傳輸啟用等選項。
5.3 編程波形和數(shù)據(jù)字符串
編程命令包括命令請求序列、命令字節(jié)、配置字節(jié)、制造商代碼和激活確認序列??偣?80 位數(shù)據(jù)以最低有效位(LSB)優(yōu)先的方式時鐘輸入解碼器,解碼器使用其唯一的 64 位 EEPROM 加密密鑰對制造商代碼進行加密。
六、密鑰生成
HCS500 支持三種學(xué)習(xí)方案,根據(jù)不同的算法和輸入種子來生成加密密鑰。
6.1 正常學(xué)習(xí)(序列號派生)
使用 KEELOQ 解密算法和發(fā)射器的 28 位序列號來派生加密密鑰。
6.2 安全學(xué)習(xí)(種子派生)
使用編碼器傳輸?shù)陌踩N子來派生輸入種子,再通過 KEELOQ 解密算法或 XOR 算法生成加密密鑰。
七、KEELOQ 編碼器
7.1 傳輸格式
KEELOQ 編碼器的傳輸由前導(dǎo)碼、頭部、加密數(shù)據(jù)和固定數(shù)據(jù)組成,每次傳輸后有一個保護期。代碼跳變部分提供多達 40 億種變化的代碼組合,非代碼跳變部分包括狀態(tài)位、功能位和 28 位序列號,兩者結(jié)合增加了組合數(shù)量。
7.2 代碼字組織
HCS 編碼器在按下按鈕時傳輸 66/69 位代碼字,由代碼跳變部分和非代碼跳變部分組成。加密數(shù)據(jù)由按鈕位、溢出計數(shù)器位、判別位和同步計數(shù)器值生成,非加密數(shù)據(jù)由狀態(tài)位、功能位和序列號組成。
八、開發(fā)支持
Microchip 為 HCS500 提供了豐富的開發(fā)支持,包括集成開發(fā)環(huán)境(MPLAB X IDE)、編譯器、匯編器、鏈接器、模擬器、仿真器、調(diào)試器、編程器等工具,以及各種演示、開發(fā)和評估板、套件,還有第三方開發(fā)工具,方便工程師進行開發(fā)和調(diào)試。
九、電氣特性
9.1 絕對最大額定值
HCS500 的絕對最大額定值包括環(huán)境溫度、存儲溫度、引腳電壓、功率耗散、電流等參數(shù),使用時需要確保不超過這些額定值,以保證設(shè)備的安全和可靠性。
9.2 標準操作條件
標準操作條件包括工作電壓和工作溫度范圍,不同的工作頻率對應(yīng)不同的最小工作電壓。
9.3 電氣特性參數(shù)
包括直流特性和交流特性,如電源電壓、輸入輸出電壓、電流、傳輸時間、時鐘頻率等參數(shù),這些參數(shù)為電路設(shè)計提供了重要的參考。
十、封裝信息
HCS500 提供 8 - Lead PDIP 和 8 - Lead SOIJ 兩種封裝形式,文檔中詳細介紹了封裝的標記信息和尺寸規(guī)格,方便工程師進行 PCB 設(shè)計。
綜上所述,Microchip 的 HCS500 KEELOQ? 代碼跳變解碼器是一款功能強大、安全可靠的解碼器,適用于各種安全應(yīng)用場景。電子工程師在設(shè)計 RKE 系統(tǒng)時,可以充分利用 HCS500 的特性和功能,提高系統(tǒng)的安全性和穩(wěn)定性。你在使用 HCS500 過程中遇到過哪些問題呢?歡迎在評論區(qū)分享你的經(jīng)驗和見解。
發(fā)布評論請先 登錄
深入解析Microchip HCS500 KEELOQ? 代碼跳變解碼器
評論