基于C P LD的 OMA-L137與ADS1178數據通信設計
1.2 硬件原理
在SPI從模式下,設計使OMAP-L137、ADS1178作從片,CPLD作主片來(lái)提供進(jìn)行數據傳輸的時(shí)鐘。OMAP-L137的SPI接口支持3針、4針、5針三種傳輸模式,這里采用3針模式(即CLK、SIMO、SOMI)。OMAP- L137引出一個(gè)GPIO口作同步信號線(xiàn)SYCN,ADS1178的READY信號線(xiàn)送給CPLD用來(lái)產(chǎn)生采樣時(shí)鐘,硬件連接如圖1所示。CLK用來(lái)傳遞接收和發(fā)送數據時(shí)的同步時(shí)鐘信號,SIMO在OMAP-L137作主片時(shí)為輸出數據線(xiàn),在OMAP-L137作從片時(shí)為輸人數據線(xiàn)。SOMI在此模式下不被采用。
OMAP-L137的SPI接口工作在從模式的配置如下:SPIGCR1寄存器的低2位配置為00,選擇SPI工作在從模式;通過(guò)配置SPIPC0和 SPIPC1寄存器來(lái)選擇采用的針模式和引腳的信號方向,這里選擇使能CLK、SIMO、SOMI三根信號線(xiàn),并分別配置為輸入、輸入和輸出;配置 SPIFMT0寄存器先輸出每組數據的“大端MSB”,根據ADS1178手冊中對數據輸出時(shí)序的要求,配置數據在CLK信號的下降沿輸出,使CLK信號工作在13MHz,同時(shí)配置現在的數據總線(xiàn)為16位。SPI的參考配置如表1所列。
在采樣數據送到OMAP-L137的SPI接口時(shí),可以啟動(dòng)EDMA模塊來(lái)對采樣數據進(jìn)行搬移。EDMA的觸發(fā)事件為SPI的每一通道數據(16位)的接收中斷,相當于完成一組(8通道)數據的傳輸需要8個(gè)觸發(fā)事件。EDMA的參數相關(guān)配置如圖2所示。其中,OPT、DSTCINT、SRCCIND和 CCNT都需要根據應用情況來(lái)進(jìn)行參數配置。
2 軟件設計
2.1 CPLD程序設計
CPLD中主要實(shí)現ADS1178對數據格式的要求。在檢測到READY信號的電平變化后,以外部時(shí)鐘ECLK為時(shí)鐘基準,產(chǎn)生128個(gè)時(shí)鐘周期 (CLK)分別送給OMAP-L137和ADS1178,來(lái)完成8通道的數據傳輸。圖3為等效原理圖,CPLD程序流程如圖4所示。
2.2 采樣程序設計
代碼調試中的主要工作是測試同步采樣A/D的8路通道。SPI和EDMA的參考配置及使能在上面已經(jīng)完成。當ADS1178開(kāi)始數據采集時(shí),通過(guò)GPIO口由OMAP-L137先向ADS1178發(fā)送一個(gè)由低變高的同步信號來(lái)通知 ADS1178開(kāi)始工作。當ADS1178完成了數據轉換時(shí),向OMAP-L137發(fā)送一個(gè)由高到低的READ-Y信號,通知OMAP-L137數據已經(jīng)準備就緒,等待主芯片的時(shí)鐘將數據送到數據線(xiàn)上;并在CPLD送出采樣時(shí)鐘后,等待EDMA的數據接收中斷,當中斷到來(lái)時(shí)完成數據的采集工作。采樣程序流程如圖5所示。
評論