基于A(yíng)DmC812和DSP實(shí)時(shí)數據采集系統設計2
——
整個(gè)系統分為事務(wù)性模塊和數據處理模塊,ADmC812控制事務(wù)模塊,進(jìn)行數據的采集、LED顯示、開(kāi)關(guān)量的輸入輸出,模擬量的輸出及串行通信等功能。F206控制數據處理模塊,主要進(jìn)行數據的處理,完成復雜的算法。另外,也可以根據數據處理結果直接處理一些重要的出口控制功能,以彌補ADmC812 I/O端口的不足,加快系統的反應速度。兩個(gè)相對獨立的功能模塊通過(guò)62256進(jìn)行數據交換。
系統軟件設計
由于系統的兩個(gè)模塊在功能上相對獨立,相應的軟件也包括兩個(gè)主要模塊,ADmC812在程序加載完成后,就進(jìn)入程序正常運行。系統初始化后,首先通過(guò)P1.0向F206請求DMA操作,且得到響應后,ADmC812獲得62256控制權。這時(shí),通過(guò)配置3個(gè)特殊功能寄存器ADCCON1~3,可以使ADmC812工作在不同的模式下。其中在DMA模式下,ADC可以連續轉換,并把采樣值捕獲到外部RAM空間而不需要來(lái)自微處理器的任何干預,由中斷位ADCCON2.7表示DMA轉換結束。在A(yíng)/D轉換結束且采樣點(diǎn)達到預定的數量后,ADmC812就通過(guò)ADC中斷,放棄對62256的控制并通知DSP進(jìn)行數據處理。而后ADmC812進(jìn)入顯示、鍵功能、I/O操作、串口通信等事務(wù)性的工作。
F206在接收到ADmC812的DMA請求后,進(jìn)入到等待狀態(tài),并放棄對外部總線(xiàn)的控制權。62256通過(guò)ADmC812獲得采樣數據,當采樣結束后,DSP從等待狀態(tài)返回到正常運行狀態(tài)并獲得總線(xiàn)的控制權,進(jìn)行數據處理,將運算結果放回62256。F206的DMA操作過(guò)程是:F206引腳/上獲得一個(gè)有效的下降沿,當CPU轉移到0002H地址單元,CPU從0002H地址單元提取中斷矢量并進(jìn)入中斷服務(wù)程序,在對MODE=0進(jìn)行成功的測試后,該中斷服務(wù)程序就執行一個(gè)IDLE指令,使F206進(jìn)入到等待狀態(tài)。當檢測到/腳上的一個(gè)上升沿后,CPU退出IDLE狀態(tài),并使外部總線(xiàn)返回其正常狀態(tài),執行數據處理程序。
軟件使用C語(yǔ)言設計,分別在兩個(gè)開(kāi)發(fā)系統上進(jìn)行程序設計和調試。利用ADI公司提供的軟件開(kāi)發(fā)工具,能夠快速高效地完成ADmC812應用程序的設計,并通過(guò)ADmC812的通用串行口在線(xiàn)調試和代碼下載。F206用聞亭公司提供的TDS-510開(kāi)發(fā)工具進(jìn)行軟件設計。最后將ADmC812和F206進(jìn)行聯(lián)機調試,完成整個(gè)軟件的開(kāi)發(fā)。
結語(yǔ)
以上設計方案,適合于采集數據量大、算法復雜、有一定實(shí)時(shí)要求的應用領(lǐng)域。由于雙CPU系統無(wú)需額外的附加雙口RAM、FIFO及復雜的控制電路,降低了成本,簡(jiǎn)化了電路,也擴展了ADmC812的應用范圍。
評論