串行DataFlash存儲(chǔ)器及其與單片機(jī)的接口
發(fā)布時(shí)間:2008/5/26 0:00:00 訪問(wèn)次數(shù):3108
來(lái)源:?jiǎn)纹瑱C(jī)及嵌入式系統(tǒng)應(yīng)用 作者:王文興 顏國(guó)正摘要:dataflash是atmel公司新推出的大容量串行flash存儲(chǔ)器產(chǎn)品,具有體積小、容量大、功耗低和硬件接口簡(jiǎn)單的特點(diǎn),非常易于構(gòu)成微型測(cè)量系統(tǒng)。本文重點(diǎn)介紹此類(lèi)存儲(chǔ)器與單片機(jī)的接口,并給出實(shí)際的電路設(shè)計(jì)和軟件代碼示例。
關(guān)鍵詞:串行flash存儲(chǔ)器 接口 at45db161b
1 概述flash存儲(chǔ)器按其接口可分為串行和并行兩大類(lèi)。串行flash存儲(chǔ)器大多采用i2c接口或spi接口進(jìn)行讀寫(xiě);與并行flash存儲(chǔ)器相比,所需引腳少、體積小、易于擴(kuò)展、與單片機(jī)或控制器連接簡(jiǎn)單、工作可靠,所以串行flash存儲(chǔ)器越來(lái)越多地用在各類(lèi)電子產(chǎn)品和工業(yè)測(cè)控系統(tǒng)中。
dataflash是美國(guó)atmel公司新推出的大容量串行flash存儲(chǔ)器產(chǎn)品,采用nor技術(shù)制造,可用于存儲(chǔ)數(shù)據(jù)或程序代碼,其產(chǎn)品型號(hào)為at45dbxxxx。此系列存儲(chǔ)器容量較大,從1mb~256mb;封裝尺寸小,最小封裝型式(cbga)尺寸為6mm×8mm;采用spi接口進(jìn)行讀寫(xiě),硬件連線少;內(nèi)部頁(yè)面尺寸較小,8mb容量的頁(yè)面尺寸為264字節(jié),16mb和32mb容量的頁(yè)面尺寸為512字節(jié),64mb容量的頁(yè)面尺寸為1056字節(jié),128mb容量和256mb容量的頁(yè)面尺寸為2112字節(jié)。另外,at45dbxxxx系列存儲(chǔ)器內(nèi)部集成了兩個(gè)與主存頁(yè)面相同大小的sram緩存,極大地提高了整個(gè)系統(tǒng)的靈活性,簡(jiǎn)化了數(shù)據(jù)的讀寫(xiě)過(guò)程。此外,at45dbxxxx系列存儲(chǔ)器工作電壓較低,只需2.7~3.6v;整個(gè)芯片的功耗也較小,典型的讀取電流為4ma,待機(jī)電流僅為2μa。所有這些特點(diǎn)使得此系列存儲(chǔ)器非常適合于構(gòu)成微型、低功耗的測(cè)控系統(tǒng)。筆者就使用at45db161b存儲(chǔ)器和pic16lc73b單片機(jī)及微型壓力傳感器構(gòu)成了用兩片紐扣電池驅(qū)動(dòng)的微型壓力測(cè)量裝置,其外形尺寸僅為φ10mm×20mm。
2 芯片簡(jiǎn)介2.1 引腳排列和功能
at45db161b為dataflash系列中的中檔產(chǎn)品,單片容量為16mb。其引腳排列如圖1所示,引腳功能如表1所列。
表1 at45db161b引腳功能
引腳名稱(chēng)
功能描述
cs
片選
sck
串行時(shí)鐘
si
串行輸入
so
串行輸出
wp
頁(yè)面寫(xiě)保護(hù)
reset
復(fù)位
rdy/busy
準(zhǔn)備好/忙
nc
未使用2.2 芯片內(nèi)部邏輯結(jié)構(gòu)
at45db161b的內(nèi)部邏輯結(jié)構(gòu)分為三個(gè)部分:存儲(chǔ)器頁(yè)陣列(主存)、緩存與i/o接口。at45db161b的存儲(chǔ)頁(yè)面大小為528字節(jié),整個(gè)存儲(chǔ)器共分為4096頁(yè),片內(nèi)集成了兩個(gè)528字節(jié)的sram緩存,內(nèi)部邏輯結(jié)構(gòu)如圖2所示。
3 存儲(chǔ)器讀寫(xiě)接口3.1 spi接口及操作模式
at45db161b存儲(chǔ)器采用spi接口進(jìn)行讀寫(xiě)。spi接口是一種通用串行接口總線,字長(zhǎng)為8位,用來(lái)與外部設(shè)備(例如eeprom、a/d轉(zhuǎn)換器等)進(jìn)行通信。spi接口利用sck、si和so三根線進(jìn)行數(shù)據(jù)的讀/寫(xiě)。其中,sck為時(shí)鐘信號(hào),si和so為數(shù)據(jù)輸入和輸出線。at45db161b的sck引腳的時(shí)鐘信號(hào)必須由外部單片機(jī)或控制器輸入,讀/寫(xiě)命令字由si引腳輸入,數(shù)據(jù)由so引腳輸出。
spi接口共有四種操作模式,分別為0、1、2和3。spi操作模式?jīng)Q定了設(shè)備接收和發(fā)送數(shù)據(jù)時(shí)的時(shí)鐘相位和極性,即決定了時(shí)鐘信號(hào)的上升和下降沿與數(shù)據(jù)流行方向之間的關(guān)系,如圖3所示。
dataflash系列存儲(chǔ)器僅支持使用得最為廣泛的spi模式0和3。在這兩種模式下,sck信號(hào)的上升沿觸發(fā)數(shù)據(jù)輸入,下降沿觸發(fā)數(shù)據(jù)輸出。二者的區(qū)別是sck信號(hào)的起始電平不同。
3.2 存儲(chǔ)器命令接口與狀態(tài)機(jī)
除了基本存儲(chǔ)單元外,dataflash系列存儲(chǔ)器內(nèi)部還包括命令用戶接口cui(command user interface)和狀態(tài)機(jī)。cui接收用戶軟件的操作命令,將其翻譯成狀態(tài)機(jī)內(nèi)部操作碼并進(jìn)行命令的有效性檢驗(yàn)。狀態(tài)機(jī)控制存儲(chǔ)器所有的內(nèi)部操作,包含一個(gè)8位的狀態(tài)寄存器(status register),用來(lái)指示設(shè)備的操作狀態(tài)。向存儲(chǔ)器輸入讀狀態(tài)寄存器命令可將狀態(tài)寄存器的數(shù)據(jù)從最高位開(kāi)始依次讀出。狀態(tài)寄存器各位的意義如表2所列。
表2 狀態(tài)寄存器各位定義
位7
位6
位5
位4
位3
準(zhǔn)備好/忙
比較
容 量
位2
位1
位0
將來(lái)使用3.3 存儲(chǔ)器操作命令及其模式
為了使存儲(chǔ)器進(jìn)行所需的操作,例如讀、寫(xiě)、擦除等,必須從si引腳輸入相應(yīng)的操作命令,然后從so或si引腳讀取或?qū)懭霐?shù)據(jù)。除讀狀態(tài)寄存器命令外,所有的命令格式為:1字節(jié)操作碼+3字節(jié)地址碼。操作碼指
來(lái)源:?jiǎn)纹瑱C(jī)及嵌入式系統(tǒng)應(yīng)用 作者:王文興 顏國(guó)正摘要:dataflash是atmel公司新推出的大容量串行flash存儲(chǔ)器產(chǎn)品,具有體積小、容量大、功耗低和硬件接口簡(jiǎn)單的特點(diǎn),非常易于構(gòu)成微型測(cè)量系統(tǒng)。本文重點(diǎn)介紹此類(lèi)存儲(chǔ)器與單片機(jī)的接口,并給出實(shí)際的電路設(shè)計(jì)和軟件代碼示例。
關(guān)鍵詞:串行flash存儲(chǔ)器 接口 at45db161b
1 概述flash存儲(chǔ)器按其接口可分為串行和并行兩大類(lèi)。串行flash存儲(chǔ)器大多采用i2c接口或spi接口進(jìn)行讀寫(xiě);與并行flash存儲(chǔ)器相比,所需引腳少、體積小、易于擴(kuò)展、與單片機(jī)或控制器連接簡(jiǎn)單、工作可靠,所以串行flash存儲(chǔ)器越來(lái)越多地用在各類(lèi)電子產(chǎn)品和工業(yè)測(cè)控系統(tǒng)中。
dataflash是美國(guó)atmel公司新推出的大容量串行flash存儲(chǔ)器產(chǎn)品,采用nor技術(shù)制造,可用于存儲(chǔ)數(shù)據(jù)或程序代碼,其產(chǎn)品型號(hào)為at45dbxxxx。此系列存儲(chǔ)器容量較大,從1mb~256mb;封裝尺寸小,最小封裝型式(cbga)尺寸為6mm×8mm;采用spi接口進(jìn)行讀寫(xiě),硬件連線少;內(nèi)部頁(yè)面尺寸較小,8mb容量的頁(yè)面尺寸為264字節(jié),16mb和32mb容量的頁(yè)面尺寸為512字節(jié),64mb容量的頁(yè)面尺寸為1056字節(jié),128mb容量和256mb容量的頁(yè)面尺寸為2112字節(jié)。另外,at45dbxxxx系列存儲(chǔ)器內(nèi)部集成了兩個(gè)與主存頁(yè)面相同大小的sram緩存,極大地提高了整個(gè)系統(tǒng)的靈活性,簡(jiǎn)化了數(shù)據(jù)的讀寫(xiě)過(guò)程。此外,at45dbxxxx系列存儲(chǔ)器工作電壓較低,只需2.7~3.6v;整個(gè)芯片的功耗也較小,典型的讀取電流為4ma,待機(jī)電流僅為2μa。所有這些特點(diǎn)使得此系列存儲(chǔ)器非常適合于構(gòu)成微型、低功耗的測(cè)控系統(tǒng)。筆者就使用at45db161b存儲(chǔ)器和pic16lc73b單片機(jī)及微型壓力傳感器構(gòu)成了用兩片紐扣電池驅(qū)動(dòng)的微型壓力測(cè)量裝置,其外形尺寸僅為φ10mm×20mm。
2 芯片簡(jiǎn)介2.1 引腳排列和功能
at45db161b為dataflash系列中的中檔產(chǎn)品,單片容量為16mb。其引腳排列如圖1所示,引腳功能如表1所列。
表1 at45db161b引腳功能
引腳名稱(chēng)
功能描述
cs
片選
sck
串行時(shí)鐘
si
串行輸入
so
串行輸出
wp
頁(yè)面寫(xiě)保護(hù)
reset
復(fù)位
rdy/busy
準(zhǔn)備好/忙
nc
未使用2.2 芯片內(nèi)部邏輯結(jié)構(gòu)
at45db161b的內(nèi)部邏輯結(jié)構(gòu)分為三個(gè)部分:存儲(chǔ)器頁(yè)陣列(主存)、緩存與i/o接口。at45db161b的存儲(chǔ)頁(yè)面大小為528字節(jié),整個(gè)存儲(chǔ)器共分為4096頁(yè),片內(nèi)集成了兩個(gè)528字節(jié)的sram緩存,內(nèi)部邏輯結(jié)構(gòu)如圖2所示。
3 存儲(chǔ)器讀寫(xiě)接口3.1 spi接口及操作模式
at45db161b存儲(chǔ)器采用spi接口進(jìn)行讀寫(xiě)。spi接口是一種通用串行接口總線,字長(zhǎng)為8位,用來(lái)與外部設(shè)備(例如eeprom、a/d轉(zhuǎn)換器等)進(jìn)行通信。spi接口利用sck、si和so三根線進(jìn)行數(shù)據(jù)的讀/寫(xiě)。其中,sck為時(shí)鐘信號(hào),si和so為數(shù)據(jù)輸入和輸出線。at45db161b的sck引腳的時(shí)鐘信號(hào)必須由外部單片機(jī)或控制器輸入,讀/寫(xiě)命令字由si引腳輸入,數(shù)據(jù)由so引腳輸出。
spi接口共有四種操作模式,分別為0、1、2和3。spi操作模式?jīng)Q定了設(shè)備接收和發(fā)送數(shù)據(jù)時(shí)的時(shí)鐘相位和極性,即決定了時(shí)鐘信號(hào)的上升和下降沿與數(shù)據(jù)流行方向之間的關(guān)系,如圖3所示。
dataflash系列存儲(chǔ)器僅支持使用得最為廣泛的spi模式0和3。在這兩種模式下,sck信號(hào)的上升沿觸發(fā)數(shù)據(jù)輸入,下降沿觸發(fā)數(shù)據(jù)輸出。二者的區(qū)別是sck信號(hào)的起始電平不同。
3.2 存儲(chǔ)器命令接口與狀態(tài)機(jī)
除了基本存儲(chǔ)單元外,dataflash系列存儲(chǔ)器內(nèi)部還包括命令用戶接口cui(command user interface)和狀態(tài)機(jī)。cui接收用戶軟件的操作命令,將其翻譯成狀態(tài)機(jī)內(nèi)部操作碼并進(jìn)行命令的有效性檢驗(yàn)。狀態(tài)機(jī)控制存儲(chǔ)器所有的內(nèi)部操作,包含一個(gè)8位的狀態(tài)寄存器(status register),用來(lái)指示設(shè)備的操作狀態(tài)。向存儲(chǔ)器輸入讀狀態(tài)寄存器命令可將狀態(tài)寄存器的數(shù)據(jù)從最高位開(kāi)始依次讀出。狀態(tài)寄存器各位的意義如表2所列。
表2 狀態(tài)寄存器各位定義
位7
位6
位5
位4
位3
準(zhǔn)備好/忙
比較
容 量
位2
位1
位0
將來(lái)使用3.3 存儲(chǔ)器操作命令及其模式
為了使存儲(chǔ)器進(jìn)行所需的操作,例如讀、寫(xiě)、擦除等,必須從si引腳輸入相應(yīng)的操作命令,然后從so或si引腳讀取或?qū)懭霐?shù)據(jù)。除讀狀態(tài)寄存器命令外,所有的命令格式為:1字節(jié)操作碼+3字節(jié)地址碼。操作碼指
熱門(mén)點(diǎn)擊
- 串行DataFlash存儲(chǔ)器及其與單片機(jī)的接
- 延長(zhǎng)EEPROM使用壽命的方法
- 智能測(cè)量系統(tǒng)中的海量數(shù)據(jù)存儲(chǔ)技術(shù)
- 存儲(chǔ)器類(lèi)型綜述及DDR接口設(shè)計(jì)的實(shí)現(xiàn)
- 嵌入式系統(tǒng)中的Flash存儲(chǔ)管理
- 鐵電存儲(chǔ)器在儀表中的應(yīng)用
- DSP處理器與FLASH存儲(chǔ)器的接口設(shè)計(jì)
- TrueFFS原理及其在CF卡上的實(shí)現(xiàn)
- 一種基于鐵電存儲(chǔ)器的雙機(jī)串行通信技術(shù)
- 多端口存儲(chǔ)器在多機(jī)系統(tǒng)中的應(yīng)用
推薦技術(shù)資料
- 循線機(jī)器人是機(jī)器人入門(mén)和
- 循線機(jī)器人是機(jī)器人入門(mén)和比賽最常用的控制方式,E48S... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開(kāi)
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門(mén)信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究