基于CPLD的OMA-L137與ADS1178數(shù)據(jù)通信設(shè)計(jì)
2.2 采樣程序設(shè)計(jì)
代碼調(diào)試中的主要工作是測(cè)試同步采樣A/D的8路通道。SPI和EDMA的參考配置及使能在上面已經(jīng)完成。當(dāng)ADS1178開(kāi)始數(shù)據(jù)采集時(shí),通過(guò)GPIO口由OMAP-L137先向ADS1178發(fā)送一個(gè)由低變高的同步信號(hào)來(lái)通知 ADS1178開(kāi)始工作。當(dāng)ADS1178完成了數(shù)據(jù)轉(zhuǎn)換時(shí),向OMAP-L137發(fā)送一個(gè)由高到低的READ-Y信號(hào),通知OMAP-L137數(shù)據(jù)已經(jīng)準(zhǔn)備就緒,等待主芯片的時(shí)鐘將數(shù)據(jù)送到數(shù)據(jù)線上;并在CPLD送出采樣時(shí)鐘后,等待EDMA的數(shù)據(jù)接收中斷,當(dāng)中斷到來(lái)時(shí)完成數(shù)據(jù)的采集工作。采樣程序流程如圖5所示。
3 系統(tǒng)測(cè)試
通過(guò)示波器可以觀測(cè)到CLK(圖6中上面的曲線)和SIMO(圖6中下面的曲線)引腳的波形圖。采樣結(jié)果放在數(shù)組Adresult中,如圖7所示。
從圖6和圖7中可以看出,采用SPI從模式的數(shù)據(jù)傳輸方法,可以通過(guò)CPLD上的程序設(shè)計(jì)得到128個(gè)連續(xù)的采樣時(shí)鐘,數(shù)據(jù)傳遞的連續(xù)性好,每組時(shí)鐘之間不存在時(shí)鐘間隔。在程序處理的后續(xù)階段,通過(guò)配置EDMA的接收事件就可以連續(xù)接收多組數(shù)據(jù),在數(shù)據(jù)全部接收到OMAP-L137中時(shí)觸發(fā)一次中斷便可完成接收工作,從而節(jié)省了處理器資源。
4 結(jié) 論
在OMAP-L137與ADS1178的實(shí)時(shí)采集數(shù)據(jù)傳遞問(wèn)題上,采用SPI主模式進(jìn)行數(shù)據(jù)接收時(shí),每接收一組數(shù)據(jù)后都需要通過(guò)中斷資源來(lái)變更接收地址。而本文通過(guò)SPI從模式進(jìn)行數(shù)據(jù)接收,可以在接收完多組數(shù)據(jù)后僅用一次接收中斷便結(jié)束工作,節(jié)約了處理器資源,并且實(shí)際測(cè)試表明,傳輸數(shù)據(jù)的連續(xù)性和實(shí)時(shí)性較好。由此看出,采用SPI從模式配合CPLD來(lái)處理OMAP-L137與ADS1178數(shù)據(jù)通信問(wèn)題無(wú)疑是一種很好的解決方案。
評(píng)論