基于SD2300的定時采集存儲系統設計
隨著科技的高速發展,現代工業測控領域的很多應用中都需要實現大量數據的定時采集存儲。筆者以為海流計設計的海流數據采集存儲接口電路為例,介紹一種定時采集存儲系統的工作原理及其實現方法。
本文引用地址:http://www.j9360.com/article/173639.htm1 總體結構
在很多情況下,尤其是惡劣的工作環境下,高性能的單片機和大容量的Flash存儲器是數據采集存儲系統的最佳選擇,本文介紹的系統也是基于這樣的考慮。系統硬件結構并不復雜,包括高性能單片機C8051F021、實時時鐘芯片SD2300、大容量Flash存儲器K9G8G08及其外圍電路,如圖1所示。工作原理也較為簡單,通過串口將單片機C8051F021與海流計相連,通過對單片機的編程實現對海流計的控制和使用。同時,為了實現定時采集和數據存儲的功能,還需將實時時鐘芯片SD2300和大容量Flash存儲器K9G8G08的相應引腳與C8051F021的GPIO相連。SD2300通過發送定時中斷使得C8051F021在預定時刻通過串口采集若干組流速和流向數據,然后將其存儲在K9G8G08中
2 硬件設計
2.1 高性能單片機C8051F021
C8051F021單片機是集成在一塊芯片上的混合信號系統級單片機。芯片上有64位數字I/O。C8051F021單片機具有片內看門狗定時器、VDD 監視器和時鐘發生器,可以說是真正的、可獨立工作的、完整的SoC(片上系統)。片上所有的模擬和數字設備都可以使能或關閉,也可以由用戶設置。片內的 Flash存儲器可以在電路(即由用戶程序在運行時)編程(讀寫),為用戶提供了非揮發性存儲器,并允許現場更新8051程序。
2.2 SD2300與C8051F021的硬件接口設計
SD2300是深圳市興威帆電子技術有限公司開發的一種具有內置晶振、兩線式串行接口的高精度實時時鐘芯片。較SD2000而言,SD2300具有更寬的定時范圍、更多的周期性中斷選擇,并增加了數字精度調整寄存器、30s時間調整和晶振停振檢測等功能。最顯著的改動是對時鐘數據/寄存器的訪問由通過不同命令字改為地址直接尋址,使得芯片的使用更加靈活,并提高了程序編寫的可讀性。
SD2300的接口為I2C總線。對于具有I2C總線接口的單片機,只需將SD2300的SCL、SDA腳與單片機的SCL、SDA腳相連;對于沒有 I2C總線接口的單片機,可以用通用I/O口來模擬I2C總線。如圖2所示,單片機C8051F021的PO.6模擬SCL,產生I2C總線的時序同步信號;PO.7模擬SDA,實現I2C總線的串行數據輸入/輸出。圖2中的INTRA、INTRB為定時中斷輸出,SDA和SCL為時鐘電路的串行時鐘腳, SDAE和SCLE為E2PROM的串行時鐘腳。
評論