基于SPI總線的多路數據采集系統的設計
圖2為AD7891的串行讀操作時序圖,從圖2中可以看出,當單片機要從AD7891中讀取數據時,必須先將置低,串行數據時一位一位的接收的。在整個數據傳輸過程中,必須一直保持低電平。傳輸的數據格式是一次傳輸16位數據,數據的傳輸是以FORMAT位開始的,緊接著是3位地址位,接下來是12位數據位,存放的是12位AD轉換的值,每一位數據都是在時鐘的上升沿開始發送的,16位數據發送完成后,DATA OUT線一直保持高阻態直到和SCLK其中任意一個有一個上升沿的脈沖出現。
圖3為AD7891的串行寫操作時序圖,從圖3中可以看出,當單片機向AD7591中寫數據時,必須先將置低,AD7891的控制寄存器只接收前6位數據,前三位A0、A1、A2用于配置AD采樣通道,在接收完前6位數據之后不再接收數據,數據的接收都是在時鐘的下降沿進行的。下面給出通道1采集的主要程序代碼(C語言)

3 結束語
文中基于串行SPI通信方式,設計了一個高速數據采集系統,用SPI總線來實現數據的讀取,能夠滿足數據采集系統的要求,具有硬件結構簡單,軟件編程容易的特點。本文引用地址:http://www.104case.com/article/192864.htm
評論