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