《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于STC15W204S單片機模擬單總線EEPROM芯片DS2431
基于STC15W204S單片機模擬單總線EEPROM芯片DS2431
2017年微型機與應用第8期
張杰1,楊筆鋒1,2,嚴學陽1,劉語嫣1
1.成都信息工程大學 電子工程學院,四川 成都 610225;2.中國氣象局大氣探測重點開放實驗室,四川 成都 610225
摘要: 基于STC15W204S單片機研究模擬了單總線EEPROM芯片DS2431。SOP8封裝的STC15W204S單片機具有引腳少、價格便宜、不需要外部晶振、內部時鐘從5 MHz~35 MHz可設置的優點。DS2431是一款具有1 024 bit的1 Wire EEPROM芯片,它具有4頁×256 bit的存儲空間,64位唯一不可更改的光刻。64位光刻的唯一性使DS2431廣泛應用于硬件電路的加密、硬件電路唯一的ID序列號以及密鑰信息的存儲等。主要介紹了1Wire通信協議、單片機模擬芯片硬件電路、單片機模擬DS2431的程序設計流程、單片機模擬DS2431的64位光刻以及EEPROM。
Abstract:
Key words :

  張杰1,楊筆鋒1,2,嚴學陽1,劉語嫣1

  (1.成都信息工程大學 電子工程學院,四川 成都 610225;2.中國氣象局大氣探測重點開放實驗室,四川 成都 610225)

        摘要:基于STC15W204S單片機研究模擬了單總線EEPROM芯片DS2431。SOP8封裝的STC15W204S單片機具有引腳少、價格便宜、不需要外部晶振、內部時鐘從5 MHz~35 MHz可設置的優點。DS2431是一款具有1 024 bit的1 Wire EEPROM芯片,它具有4頁×256 bit的存儲空間,64位唯一不可更改的光刻。64位光刻的唯一性使DS2431廣泛應用于硬件電路的加密、硬件電路唯一的ID序列號以及密鑰信息的存儲等。主要介紹了1Wire通信協議、單片機模擬芯片硬件電路、單片機模擬DS2431的程序設計流程、單片機模擬DS2431的64位光刻以及EEPROM。

  關鍵詞單片機模擬單總線器件1-Wire;DS2431;STC15W204S

  中圖分類號:TP368.1文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.08.011

  引用格式:張杰,楊筆鋒,嚴學陽,等.基于STC15W204S單片機模擬單總線EEPROM芯片DS2431[J].微型機與應用,2017,36(8):31-33,38.

0引言

  *基金項目:國家重大科學儀器設備開發專項(2012YQ110205)DS2431是一款具有64位唯一光刻的1 024 bit EEPROM芯片。模擬DS2431就是要模擬DS2431的64位光刻和數據的存儲,從而實現用單片機模擬的DS2431和原來的DS2431具有相同的64位光刻和數據存儲功能。利用64位光刻的不可更改的特性,DS2431廣泛應用于硬件電路加密、設備唯一ID序列號、關鍵信息存儲、知識產權保護、安全功能控制等。單總線設備具有簡單的線路、較少的硬件開銷和低廉的成本等優點,便于總線擴展和維護[12]。作為一種簡單的信號傳輸電路,1Wire總線用一根數據線來實現一個或者一個以上的從器件和主控制器之間的半雙工通信。單總線通信可以通過初始化1Wire器件、識別1Wire器件和主機與從機之間數據交換三個步驟來實現[34]。它是主從結構,主機呼叫從器件的時候,從器件才進行應答[5]。所以,主機只有通過嚴格的單總線命令序列來訪問1Wire器件,即初始化從器件、ROM、功能命令[67]。如果出現序列混亂,1Wire器件將不會相應主機的命令[89]。模擬1Wire器件要求單片機嚴格應對單總線命令序列和命令時隙,要求單片機對主機發出的命令進行應答[10]。通過對DS2431應答模擬從而達到用單片機模擬DS2431的目的,用這種方法也可以對其他的1Wire器件進行模擬。

1單總線協議

  1.11-Wire單總線時序

  1Wire器件在數據傳輸過程中都會遵循嚴格的通信協議,單總線通信協議有復位脈沖、應答脈沖、寫1、寫0、讀1、讀0幾種類型[11]。

  單總線的初始化步驟如圖1所示。

001.jpg

  (1)主機拉低總線480 μs~960 μs,然后主機釋放總線進入接收狀態[12]。

  (2)從機監測到主機不少于480 μs的復位信號后等待15 μs~60 μs,然后產生一個應答信號(拉低總線60 μs~240 μs)[13]。

  (3)從機釋放總線至少一個2 μs的恢復時間。

  寫1和寫0時序步驟如圖2所示。

002.jpg

  (1)主機拉低總線5 μs~15 μs,然后主機將總線拉高或者拉低45 μs。

  (2)從機在15 μs后開始采樣。

  (3)主機釋放總線并且有至少一個2 μs的恢復時間(標準是5 μs)。

  (4)整個寫1時隙至少60 μs。

  讀數據時序步驟如圖3所示。

003.jpg

  (1)主機將總線拉低至少1 μs。

  (2)從機從下降沿到來之后將總線拉低或者拉高并保持15 μs。

  (3)在主機拉低總線后15 μs內主機釋放總線并采樣。

  (4)15 μs后由電阻將總線拉高。

  (5)整個時間不少于60 s,每個時間片之后有一個至少2 μs的恢復時間。

  1.2單總線接口

004.jpg

  圖4單總線接口單總線接口電路是非常簡單的,DS2431的讀和寫的電壓范圍是2.8 V~5.25 V。在I/O口接一個上拉電阻,根據DS2431數據手冊,上拉電阻電阻的范圍是0.3 kΩ~2.2 kΩ。單總線接口如圖4所示。

2模擬單總線器件時序及接口

  2.1模擬單總線器件時序

  模擬單總線器件的時序最重要的是在符合單總線通信協議的規定時間內對主機發起的信號進行應答,其中需要對延時把握精確,錯過了時序主機有可能視從機沒有應答從而通信失敗。在模擬時序的時候可以借助邏輯分析儀來對時序進行分析并通過分析結果對模擬時序進行微調。

  模擬單總線初始化步驟如圖5所示。

005.jpg

  (1)單片機等待主機復位信號,監測主機拉低總線并在480 μs內再次確認主機拉低了總線。

  (2)單片機在確認了復位信號后延時等待總線拉高。

  (3)單片機監測到主機將總線釋放拉高后拉低總線(從機應答)60~240 μs。

  (4)單片機釋放總線(拉高總線表示應答完成)。

  模擬主機寫1和寫0時序步驟:

  (1)單片機等待主機拉低總線發起通信。

  (2)在監測到主機拉低總線后,單片機延時幾微秒后開始采樣。

  (3)單片機采樣后開始延時,主機寫完數據后恢復總線。

  (4)整個時間持續60 μs。

  時序圖如圖5所示,其中采樣時間可以微調,可以借助邏輯分析儀分析時序。主機寫命令55h并匹配。

  ROM的模擬時序如圖6所示。

006.jpg

  模擬主機讀數據時序步驟:

  (1)主機將總線拉低至少1 μs。

  (2)單片機監測到主機拉低總線1 μs后立即對總線拉高或者拉低,要確保主機能夠進行采樣。

  (3)主機采樣后,單片機恢復總線。

  (4)整個時間不少于60 μs,每個時間片之后有一個至少2 μs的恢復時間。

  時序圖如圖3所示,其中單片機對總線操作的時間可以微調,可以借助邏輯分析儀分析時序。主機寫命令FOh并搜索ROM的模擬時序如圖7所示。

 

007.jpg

  2.2模擬單總線器件硬件電路接口設計

  STC15W204S單片機工作電壓范圍為2.5 V~5.5 V,在ISP編程時內部時鐘在5 MHz~35 MHz范圍內可調,±1%溫飄(-40℃~+85℃)常溫下溫飄±0.6%(-20℃~+65℃),可以滿足硬件指標要求。STC15W204S有8個引腳6個I/O口。調試時P3.0和P3.1做串行接口用于燒寫程序,P3.3、P5.4、P5.5可以接一個LED燈用于調試觀測單片機狀態。燒寫好程序的單片機只需要3個引腳便可以工作。電路接口設計如圖8所示。

008.jpg

3模擬DS2431的程序設計

  3.1程序設計的流程

009.jpg

  圖9程序設計流程主機會在一開始發出復位信號,一旦檢測到有從器件存在就可以發出ROM操作命令[14]。ROM命令有“讀”ROM【33h】、“匹配”ROM【55h】、“跳過”ROM【CCh】、“搜索”ROM【F0h】等。如果主機發出了ROM命令,那么單片機接收到了ROM命令就要做出相應的回應。同樣接下來主機會發出讀寫操作,單片機也進行相應的回應。程序設計流程如圖9所示。

  3.2模擬64位光刻和EEPROM

  因為每一片單總線芯片的64位光刻都是唯一且不可更改的,所以DS2431的光刻可以用來做硬件ID序列號,也可以用來加密硬件,EEPROM可以用來存儲關鍵信息。

  為模擬光刻,首先讀出一塊DS2431的光刻,然后用單片機開一個8 B的數組存儲這些光刻。當主機發出33h命令時單片機就按字節給它吐光刻,當主機發出F0h命令時單片機就按位吐出光刻。當主機發出55h命令時單片機默認接收相應的數據即可[15]。需要注意的是主機發出的命令是先寫高位再寫低位,在接收命令的時候也是先接收高位再接收低位。

  模擬EEPROM可以用單片機開一塊數組用來存儲數據,可以一開始就給這些數組寫一些固定的值,主機來讀的時候就吐數給它。也可以開一片內存來存儲主機寫的數,單片機可以將這些數據存到片內EEPROM。在設計這個數組的時候要參照模擬目標的EEPROM結構,單片機在接到地址命令和頁碼命令時用相應的數組結構來對應。

4結論

  利用STC15W204S單片機模擬DS2431有很好的發展前景和利用價值,STC15W204S單片機具有引腳少、功耗低、不需外部晶振、價格低廉等優點。本研究實現了用單片機模擬DS2431,破解了DS2431光刻不可以復制的難題。本研究實現了用單片機模擬單總線從機的應答時序,利用這種方法還可以模擬其他的單總線設備。DS2431廣泛應用于打印設備、醫療設備、硬件電路的加密。利用STC15W204S單片機模擬DS2431的部分功能就可以破解某些加密設備、復制硬件電路等。STC15W204S單片機具有溫度漂移,在復制的時候應考慮溫度漂移范圍。單片機的工作范圍應設置不同的頻率多次下載程序測試,并結合延時函數的修改來確定,下載程序時應取其正常工作范圍的中間值來克服溫度漂移問題。可以利用高低溫實驗來驗證程序及模擬單片機的可靠性。

參考文獻

  [1] 陳浩. 基于智能傳感器和單片機的溫度監測系統[D]. 北京:華北電力大學,2005.

  [2] 陳志英,李光輝. 單總線技術及其應用[J]. 電氣時代,2015(8):74-75.

  [3] 楊張利. IC卡燃氣表智能控制及檢測系統研究[D]. 重慶:重慶大學,2007

  [4] 胡皓,雷金莉,周妮娜. 1-Wire總線技術及其在火災監測中的應用[J]. 機電工程技術,2006,35(6):68-71.

  [5] 張揚清. 基于雙機通信的電壓和溫度監控系統[J]. 科技風,2013(23):104-105.

  [6] 張東. 基于雙CPU的溫室溫度遠距離測控系統研究[D]. 重慶:重慶大學,2007

  [7] 張華峰. One-Wire Bus檢測網從站管理及可靠傳輸研究[D]. 南昌:南昌大學,2007

  [8] 高羅卿. 1-wire系統中TM卡的單片機等效替換[J]. 單片機與嵌入式系統應用, 2008(8):62-65.

  [9] 李穎. 車用動力電池SOC估算方法的研究及其管理系統設計[D]. 沈陽:東北大學, 2012.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产一区二区三区精品视频 | 在线中文字日产幕 | 萌白酱国产一区 | 老司机精品影院一区二区三区 | 日韩欧美视频一区 | 毛片视频网站在线观看 | 无国产精品白浆是免费 | 久久免费激情视频 | 在线国产一区 | 黄色福利小视频 | 天堂最新版 | 国产美女精品视频免费观看 | xx69欧美| 欧美猛交xxxx免费看 | 2019偷偷狠狠的日日 | 114一级毛片免费 | 国产欧美精品区一区二区三区 | 国产中文久久精品 | 国产精品毛片一区二区三区 | 亚洲国产一级毛片 | 国产在线视频h | 欧美同性videos在线可播放 | 99综合视频| 免费一级特黄欧美大片久久网 | 国内精品久久久久久中文字幕 | 亚洲爽爽| 九九国产在线视频 | 日韩精品一区二区三区在线观看 | 久久综合给会久久狠狠狠 | 欧美在线不卡 | 国产欧美日韩综合精品一区二区 | 中文字幕在线看片成人 | 99国产欧美久久精品 | 欧美叫床戏做爰无遮挡 | 国产成人免费网站 | 国产精品毛片在线更新 | 三级久久 | 亚洲日本久久一区二区va | 一级做a爰片久久毛片鸭王 一级做a爰全过程免费视频毛片 | 精品中文字幕不卡在线视频 | 亚洲自偷自拍另类12p |