常州大學(xué)信息科學(xué)與工程學(xué)院 陳江燁
華北石化公司機(jī)動(dòng)設(shè)備處 喬悅峰
新型大容量閃存與單片機(jī)的接口設(shè)計(jì)
常州大學(xué)信息科學(xué)與工程學(xué)院 陳江燁
華北石化公司機(jī)動(dòng)設(shè)備處 喬悅峰
介紹了大容量存儲(chǔ)器AT45DB041B的特點(diǎn),給出了用AVR單片機(jī)對(duì)AT45DB041B進(jìn)行讀寫(xiě)操作的程序。
AT45DB041B;單片機(jī);大容量;存儲(chǔ)器;串行
AT45DB041B是ATMEL公司的新型FLASH芯片。該芯片具有容量大、讀寫(xiě)速度快、外圍電路少等諸多優(yōu)點(diǎn),更為重要的是該芯片可最低工作在2.5V,工作電流僅為4mA,因此在移動(dòng)通信、便攜等場(chǎng)合得到了廣泛的應(yīng)用。由于采用了串行接口,大大減少了引腳數(shù)量,同時(shí)也提高了系統(tǒng)可靠性,降低了開(kāi)關(guān)噪聲,縮小了封裝體積??梢詰?yīng)用于商業(yè)、工業(yè)等需要高密度、低引腳數(shù)、低電壓與低功耗的應(yīng)用場(chǎng)合。
AT45DB041B中的數(shù)據(jù)按頁(yè)存放,主存共2048頁(yè),每頁(yè)264字節(jié),總?cè)萘繛?28K字節(jié)(約4M比特)。存放在主存中的數(shù)據(jù)掉電不丟失。除了主存以外,AT45DB041B還有兩個(gè)容量為264字節(jié)的數(shù)據(jù)緩存。
表1 引腳功能描述
表2 狀態(tài)寄存器格式
AT45DB041B引腳見(jiàn)圖1,引腳功能描述見(jiàn)表1。
存放在主存儲(chǔ)器中的數(shù)據(jù)掉電不丟失。除了主存儲(chǔ)器以外,AT45DB041B還有兩個(gè)容量為264字節(jié)的數(shù)據(jù)緩存。緩存可以用作主存與外部進(jìn)行數(shù)據(jù)交換時(shí)的緩沖區(qū)域,也可以暫存一些臨時(shí)數(shù)據(jù)。緩存讀寫(xiě)方便迅速,但掉電數(shù)據(jù)會(huì)丟失。AT45DB041B數(shù)據(jù)讀寫(xiě)采用串行方式,讀寫(xiě)速度快,并且兼容CMOS和TTL輸入和輸出。
圖1 AT45DB041B 引腳圖
根據(jù)數(shù)據(jù)手冊(cè)可以編寫(xiě)單片機(jī)對(duì)AT45DB041B的讀寫(xiě)程序,下面僅介紹數(shù)據(jù)讀取中的連續(xù)陣列讀過(guò)程:
圖2 讀取數(shù)據(jù)流程圖
圖3 寫(xiě)入數(shù)據(jù)流程圖
在提供了主存儲(chǔ)器陣列的開(kāi)始地址后,在時(shí)鐘信號(hào)的作用下連續(xù)讀命令可以從芯片中以數(shù)據(jù)流方式進(jìn)行數(shù)據(jù)讀取,而無(wú)需額外的地址信息或控制信號(hào)。芯片內(nèi)部的地址計(jì)數(shù)器會(huì)在每一個(gè)時(shí)鐘周期后自動(dòng)增加,因而可以在不用寫(xiě)入新的地址的情況下繼續(xù)讀取下一個(gè)字節(jié)。要進(jìn)行一次連續(xù)讀操作,操作碼E8H必須要寫(xiě)入芯片中,隨后是3個(gè)字節(jié)的地址(24位)與4個(gè)無(wú)關(guān)字節(jié)(32位)。24個(gè)地址位中,開(kāi)始的4位是保留位,接下來(lái)的的11位(PA10-PA0)來(lái)用表示將要讀取的數(shù)據(jù)在主存儲(chǔ)器中的頁(yè)地址,再接下來(lái)的9位(BA8-BA0)用來(lái)表示字節(jié)在頁(yè)中的地址。無(wú)關(guān)字節(jié)在讀操作初始化時(shí)是必需的,在無(wú)關(guān)字節(jié)后,SCK引腳上的時(shí)鐘信號(hào)使數(shù)據(jù)從SO引腳輸出。
狀態(tài)寄存器是一個(gè)重要寄存器,其格式見(jiàn)表2。讀狀態(tài)寄存器的值可以用來(lái)確定設(shè)備的忙閑狀態(tài),忙閑狀態(tài)通過(guò)寄存器的第7位指示,如果第7位為1,則設(shè)備位于空閑狀態(tài)并可接收下一條指令。如果為0,則表示設(shè)備忙,需要等待。圖2、圖3分別是讀出數(shù)據(jù)和寫(xiě)入數(shù)據(jù)的流程圖。
下面給出用AVR單片機(jī)ATmega88對(duì)AT45DB041B操作的有關(guān)程序。
根據(jù)AT45DB041B的操作時(shí)序,完成了其與單片機(jī)之間的通信,并在筆者設(shè)計(jì)的裝置中得到了成功的應(yīng)用,運(yùn)行穩(wěn)定可靠。AT45DB041B的突出特點(diǎn)是電路簡(jiǎn)單、價(jià)格低、存儲(chǔ)容量大,占用系統(tǒng)資源少,適宜在大容量數(shù)據(jù)采集系統(tǒng)中應(yīng)用。
[1]Atmel Corporation.AVR 8-bit Microcontroller Data Sheet:Atmega88.pdf,2006.
[2]Atmel Corporation.Serial DATAFLASH Product Databook.
[3]Atmel Corporation.Serial DATAFLASH Application Note.
陳江燁(1977—),女,碩士,常州大學(xué)信息科學(xué)與工程學(xué)院講師。