基于單片機的高精度海量數據采集與存儲系統
TF存儲卡的作用主要是存儲數據。具體實現過程為:讀取A/D 采樣數據,并將其臨時存儲在單片機的RAM 存儲區中,當存儲的數據達到一定量時將其存入指定的TF 存儲卡數據塊中,以此往復,直至完成TF 存儲卡預定數據塊的存儲。本系統采用2 GB 容量的SanDisk生產的TF存儲卡,它特別適用于具有大容量數據儲存要求的數據采集存儲系統.TF 存儲卡與MSP430F1611的連接電路如圖3所示。
TF存儲卡體積為15 mm×11 mm×1 mm,相當于手指甲蓋的大小,且包括SD 協議和SPI 協議2 種總線模式,本系統總線模式是通過COM0指令將其設置為SPI模式,同時設置單片機UART相應的控制寄存器并且選擇P5.1~P5.3引腳第二功能 SIMO1,SOMI1以及UCLK1,此外TF存儲卡初始化。單塊讀。單塊寫以及擦出操作分別調用COM1,COM17,COM24以及COM38指令及其相應步驟來完成。
1.4 與上位機通信
FT245是FTDI公司的一款并行FIFO雙向數據傳輸的USB 芯片,本系統中USB 通信方式如圖4所示,其中FT245 向MSP430F1611 單片機提供8 位并行數據總線D0~D7,通過在上位機上安裝VCP 驅動程序將其轉換為虛擬串口。
上位機軟件是基于LabVIEW 的VISA(Virtual In-strument Software Architecture)接口模塊開發而成,VISA是應用于儀器編程的標準I/O應用程序接口,是工業界通用的儀器驅動器標準應用程序接口(API),采用面向對象編程,具有很好的兼容性。擴展性和獨立性[10-11]?使用其開發的上位機用戶界面如圖5所示,當數據采集存儲完畢后,可選擇讀取數據功能,此時單片機將讀取TF存儲卡中相應塊內所存數據,以串行方式發送到上位機,并存為轉向文件。txt,以便進行數據的事后分析。
2 結語
本系統很好地解決了在某些惡劣實驗環境條件下,數據的高精度采集海量存儲以便事后分析的問題。此外當數據采集存儲完畢后,用戶可以通過上位機軟件讀取數據指令獲取TF 存儲卡中相應塊內所存數據。txt文檔,通過調用Matlab即可對數據做進一步的分析。同時該系統具有體積小。功耗低的優點.
評論