串行Flash存儲(chǔ)器的編程解決方案
串行Flash存儲(chǔ)器具有體積小、功耗低、管腳少、掉電不丟失數(shù)據(jù)等諸多優(yōu)點(diǎn),在IC卡和便攜式智能檢測儀表中廣泛的應(yīng)用。本文將介 紹一種通過51系列單片機(jī)的串行口與AT45d041芯片通訊的方法,此方法不僅編程簡單,且運(yùn)行速度高,是一種值得推薦的編程方法。
1 AT45D041的工作原理
AT45D041是具有4 325 376位的大容量存儲(chǔ)器,他們被分成2 048頁(對(duì)應(yīng)地址為PAl0一PA0),每頁264B(對(duì)應(yīng)地址BA8~BA0)。這些存儲(chǔ)器被稱之為主存儲(chǔ)器,此外AT45D041還有2個(gè)264 B的緩沖區(qū)Bufferl和Buffer2,當(dāng)主存儲(chǔ)器的某頁正在被使用時(shí),這2個(gè)緩沖區(qū)允許接收數(shù)據(jù)。當(dāng)片選CS有效時(shí),數(shù)據(jù)的傳輸在時(shí)鐘信號(hào)SCK的同步下,通過SI(輸入)和SO (輸出) 進(jìn)行。其原理框圖如圖1所示。
本文引用地址:http://butianyuan.cn/article/151234.htm |
表1為包含AT45D041芯片IC卡管理定義。
AT45D041的最大工作頻率可達(dá)10MHz,工作電壓為5 V±10%,工作最大電流讀為25 mA,寫為50 mA,數(shù)據(jù)保持可達(dá)100年,工作溫度為0~70℃,根據(jù)要求可超過指定工作溫度,通訊協(xié)議為SPI串行接口方式0和方式3。
2 AT45D041與AT89C55的接口
由于AT45D041只有一個(gè)管腳進(jìn)行命令、數(shù)據(jù)的輸入和數(shù)據(jù)的輸出,其命令和數(shù)據(jù)都是串行輸入的,工作時(shí)序圖如圖2所示。
從圖2可以看出,輸入數(shù)據(jù)時(shí),SCK的上升沿前后一段時(shí)間分別為建立時(shí)間tsu (>10 ns)和保持時(shí)間tH (>25 ns),輸入接口應(yīng)在SCK上升前tsu時(shí)段內(nèi)將數(shù)據(jù)準(zhǔn)備好,并在其后的tH時(shí)段內(nèi)保持該數(shù)據(jù)。輸出數(shù)據(jù)時(shí),SO僅在SCK下降沿rv (80 ns)時(shí)間后有信號(hào)輸出,并在下一個(gè)時(shí)鐘下降沿到來時(shí)消失(tHo=0),接口電路應(yīng)在有效輸出時(shí)間內(nèi)讀取數(shù)據(jù)。
51系列的單片機(jī)都具有至少一個(gè)全雙工串行接口,他支持4種工作方式,這里采用方式0,作為移位寄存器輸入輸出。其工作時(shí)序圖如圖3所示。
串行口以振蕩頻率的1/12波特率接收和發(fā)送數(shù)據(jù),RXD為串行數(shù)據(jù)輸入輸出端,TXD為同步移位信號(hào)輸出端。
本系統(tǒng)采用AT89C55單片機(jī)芯片實(shí)現(xiàn)與AT45B041的接口,負(fù)責(zé)傳感器信號(hào)的采集、存儲(chǔ)與讀取及顯示,其硬件接口電路圖如圖4所示。
評(píng)論