基于C8051F340的非易失大容量數(shù)據(jù)存儲(chǔ)方案
摘要:海洋儀器在后期數(shù)據(jù)分析處理時(shí)數(shù)據(jù)存儲(chǔ)電路是不可或缺的。針對(duì)海洋儀器對(duì)數(shù)據(jù)存儲(chǔ)大容量非易失的要求,結(jié)合實(shí)際工作經(jīng)驗(yàn),給出幾種擴(kuò)展海量存儲(chǔ)器的方案和實(shí)際電路。這些方案是以C8051F340為主控制器,充分利用C8051F340片上集成的I2C,SPI和I/O接口資源擴(kuò)展大容量存儲(chǔ)器,相比于傳統(tǒng)的存儲(chǔ)電路,省去了譯碼和鎖存電路,同時(shí)簡(jiǎn)化了軟件編程。經(jīng)實(shí)際應(yīng)用,這些存儲(chǔ)電路工作穩(wěn)定、功耗低,適用于中低速,需存儲(chǔ)大量數(shù)據(jù)的儀器儀表。
關(guān)鍵詞:C8051F340;I2C;SPI;I/O;非易失;大容量
在海洋儀器工作過(guò)程中,觀測(cè)的周期比較長(zhǎng),累積的數(shù)據(jù)量往往比較大,要求使用大容量存儲(chǔ)器。而且由于海洋環(huán)境惡劣,很多時(shí)候電池耗盡,儀器尚未回收,為了保證數(shù)據(jù)安全,必須采用掉電非易失存儲(chǔ)器。EEPROM和Flash閃存,既有ROM的特點(diǎn)非易失性,又有比較高的存取速度,而且易于擦除和重寫(xiě),功耗很小,集成度高,是比較好的選擇。但早期的存儲(chǔ)電路通常比較復(fù)雜,因?yàn)槠浯鎯?chǔ)器容量小,接口單一,為了擴(kuò)大容量需要外加擴(kuò)展地址線的譯碼和鎖存電路。隨著電子技術(shù)的發(fā)展,各種大容量存儲(chǔ)器層出不窮。這些存儲(chǔ)器在內(nèi)部結(jié)構(gòu)、實(shí)現(xiàn)技術(shù)、物理外觀和工作電壓等方面有較大差異,而在硬件接口上常見(jiàn)為I2C接口、 SPI接口和并行接口。
以Microehip公司生產(chǎn)的C8051F340為主控器,提出基于多種硬件接口的大容量存儲(chǔ)設(shè)計(jì)方案,可方便移植到與51兼容的其他單片機(jī)系統(tǒng)。
1 C8051F340特性及硬件接口
C8051F340是Sihcon公司生產(chǎn)的混合信號(hào)片上系統(tǒng)型單片機(jī)。它的內(nèi)核具有標(biāo)準(zhǔn)8052所有外設(shè),包括2個(gè)全雙工UART、1個(gè)增強(qiáng)型SPI端口,1個(gè)SMBUS端口,40個(gè)I/O引腳,4 352字節(jié)的內(nèi)部RAM,128字節(jié)特殊功能寄存器等。C8051F340片上豐富的硬件資源,使其方便擴(kuò)展不同的接口存儲(chǔ)器。圖1是基于C8051F340的硬件接口(I2C,SPI,GPIO)實(shí)現(xiàn)的3種大容量存儲(chǔ)器擴(kuò)展方案的示意圖。
2 I2C總線擴(kuò)展EEPROM存儲(chǔ)器
2.1 I2C總線
在并行總線系統(tǒng),CPU要完成與外部RAM或ROM的交換數(shù)據(jù),通常需要有3組總線(地址、數(shù)據(jù)、控制總線),采用如此多的并行總線可使控制速度快,與存儲(chǔ)器交換數(shù)據(jù)方法簡(jiǎn)單。但是,在繪制電路板時(shí),這些總線將耗費(fèi)很大空間。而I2C存儲(chǔ)器克服了這個(gè)缺點(diǎn),它僅需要數(shù)據(jù)線SDA和時(shí)鐘線SDL 2條總線即可。數(shù)據(jù)交換速率要求在ms級(jí)的場(chǎng)合,I2C存儲(chǔ)器可以取代并行存儲(chǔ)器。
2.2 AT24C1024及與C8051F340的軟硬件設(shè)計(jì)
AT24C1024是l Mb支持I2C數(shù)據(jù)傳送協(xié)議的串行CMOS EEPROM,其內(nèi)部結(jié)構(gòu)為512頁(yè),每頁(yè)為256字節(jié),可用電擦除;它具有2種寫(xiě)入方式,一種是字節(jié)寫(xiě)入方式;另一種是頁(yè)寫(xiě)入方式。允許在一個(gè)寫(xiě)周期內(nèi)同時(shí)對(duì)1個(gè)字節(jié)到l頁(yè)的若干字節(jié)的編程寫(xiě)入,l頁(yè)的大小取決于片內(nèi)頁(yè)寄存器的大小。AT24C1024具有256字節(jié)數(shù)據(jù)的頁(yè)面寫(xiě)能力。
評(píng)論