多通道A/D轉換控制模塊的設計與實(shí)現
2 軟件設計
Neuron C是專(zhuān)門(mén)為Neuron芯片設計的編程語(yǔ)言,它以ANSI C為基礎,包括對ANSI C的擴展,可直接支持Neuron芯片的軟件固化。Neuron C定義了多種I/O對象類(lèi)型,如直接、計數器/計時(shí)器、串行和并行。下面介紹MC143150 Neuron芯片對ADS7844的8個(gè)通道工作在差分輸入方式下進(jìn)行循環(huán)采樣的程序設計過(guò)程。
選用MC143150 Neuron芯片的Neurowire輸入/輸出作為I/O對象,使MC143150 Neuron芯片循環(huán)采集ADS7844輸出端口DOUT信號,實(shí)現與ADS7844同步全雙工串行通信。
2.1 Neurowire輸入/輸出對象語(yǔ)法結構定義
本文引用地址:http://dyxdggzs.com/article/178601.htm
IO_8:Neurowire輸入/輸出對象使用管腳IO_8~IO_10,IO_8指定時(shí)鐘管腳,IO_9是串行數據輸出管腳,IO_10是串行數據輸入管腳。
Master:指定Neuron芯片在管腳IO_8上提供時(shí)鐘,設置為輸出管腳。
Slave:指定Neuron芯片檢測在管腳IO_8上的時(shí)鐘,設置為輸入管腳。
Select(pin-nbr):為Neurowire master指定片選管腳,為IO_0~IO_7管腳之一。
Timeout(pin-nbr):為Neurowire Slave指定一個(gè)可選擇的超時(shí)信號管腳,其范圍是IO_0~IO_7。當使用超時(shí)信號管腳時(shí),當neuron芯片等待時(shí)鐘的上升沿或下降沿時(shí),將檢查該管腳的邏輯電平。如果檢測到邏輯電平為“1”,則傳輸停止。
Kbaud(const—expr):為Neurowire master指定比特率,const—expr可以為1 kb·s-1、10 kb·s-1或20 kb·s-1。對于10 MHz的Neuron芯片輸入時(shí)鐘,缺省值為20 kb·s-1。
Clockedge(+|-):指數據觸發(fā)時(shí)鐘信號極性,clockedge(+)為上升沿,clockedge(-)為下降沿。
io-object-name:由用戶(hù)為該I/O對象指定的名字。
2.2 采樣的程序清單
3 結束語(yǔ)
目前,該多通道A/D轉換控制模塊通過(guò)長(cháng)時(shí)間運行測試,其性能可靠,故障率低,節約能耗,實(shí)現了多個(gè)模擬量轉換、采集與處理功能,給現場(chǎng)自動(dòng)化控制系統的集成帶來(lái)較大的靈活性。
c語(yǔ)言相關(guān)文章:c語(yǔ)言教程
模數轉換器相關(guān)文章:模數轉換器工作原理
評論