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