一種多路同步數(shù)據(jù)采集系統(tǒng)的設計
圖5 CS5451A一幀數(shù)據(jù)輸出圖
4 中斷服務子程序的設計
CPU讀采樣數(shù)據(jù)是在中斷服務子程序中設計的,在中斷程序中讀走采樣值數(shù)據(jù),并判斷通道號是否對應。軟件流程如圖6所示。
圖6 軟件流程圖
5 結論
本文利用CS5451A設計一個通用的多路數(shù)據(jù)采集系統(tǒng),利用XILINX SPARTAN3E系列FPGA芯片實現(xiàn)異步FIFO和采樣數(shù)據(jù)串并轉換模塊的設計,CPU不用直接用SPI控制器接收CS5451A芯片輸出的串行格式的數(shù)據(jù),只需要把ADC輸出的串行數(shù)據(jù)通過串并轉換模塊存入FIFO緩沖區(qū),并產生一個中斷信號,在CPU的中斷子程序中讀出采樣數(shù)據(jù)。該方案已經(jīng)在低壓繼電保護裝置中得到了應用,通過試驗本系統(tǒng)的數(shù)據(jù)采集精度可以達到0.2級。調試中發(fā)現(xiàn),在進行PCB設計時,要注意以下幾點:
1)模擬部分電路(差分輸入以及參考電源部分)和數(shù)字部分(XIN、FSO、SDO、SCLK信號)應完全分開在不同的區(qū)域里。
2)良好的去耦對抑制CS5451A產生的噪聲很重要,去耦電容一般為0.1 μF,且放到電源輸入引腳盡可能近的地方,以達到良好的去耦效果。
3)如果系統(tǒng)要求工作在-40~+85℃的溫度范圍內,要求采樣精度達到0.2級,必須使用外部高精度的參考電源。
評論