基于ADmC812和DSP實時數(shù)據(jù)采集系統(tǒng)設(shè)計1
ADmC812是ADI公司的以8051(8052)內(nèi)核為控制核心的新型微轉(zhuǎn)換器。由于ADmC812內(nèi)部集成了大量的外圍設(shè)備。它本身就是一個完全可編程、自校準(zhǔn)、高精度的數(shù)據(jù)采集系統(tǒng),可以取代傳統(tǒng)的MCU+A/D+ROM+RAM高成本、大體積產(chǎn)品,尤其是它的高精度和高速度A/D模塊,特別適應(yīng)于智能傳感、瞬時獲取、數(shù)據(jù)采集和各種通信系統(tǒng)。但是,對于需要采集數(shù)據(jù)量大、運(yùn)算復(fù)雜、實時性又要求較高的場合,由于在結(jié)構(gòu)和速度上的限制,往往是無法滿足要求的。本文針對這種情況,提出了基于ADmC812和DSP的數(shù)據(jù)采集系統(tǒng)。在這個系統(tǒng)中,ADmC812作為主機(jī),完成ADC、DAC、顯示、鍵盤等功能,而DSP作從機(jī),專注于復(fù)雜的數(shù)據(jù)運(yùn)算,兩者通過通用的SRAM實現(xiàn)數(shù)據(jù)的交換和通信。
ADmC812和TMS320F206簡介
ADmC812微轉(zhuǎn)換芯片
ADmC812是具有16位計數(shù)/定時和32條可編程I/O接口的8051/8052微控制器,內(nèi)置一個8通道、5ms轉(zhuǎn)換時間、精度自校正、12位逐次逼近的ADC;2個12位DAC,10.5KB的閃存EEPROM,256字節(jié)的SRAM。還包括一些重要功能模塊,如看門狗定時器和電源監(jiān)控器,ADC與數(shù)據(jù)存儲器之間的DMA方式,存儲保護(hù)功能,一個通用異步串行收發(fā)器(UART)、SPI和I2C總線接口。
ADmC812內(nèi)豐富的外設(shè),使它不需要外部總線擴(kuò)展就可以組成一個完整數(shù)據(jù)采集系統(tǒng),有很高的性價比。更值得注意的是在ADmC812內(nèi)集成了8路12位高精度、自校準(zhǔn)4ppm/℃的ADC電路。而且,當(dāng)工作條件(如時鐘頻率、模擬輸入范圍、基準(zhǔn)電壓或電源電壓)發(fā)生變化時,為了得到高精度的ADC結(jié)果,可以用軟件對ADmC812內(nèi)4個用于校正的特殊功能的寄存器設(shè)置,達(dá)到進(jìn)一步校正ADC的目的。ADmC812通過設(shè)置ADCON1~3 三個特殊功能寄存器,可以使ADC工作于3種不同的模式,實現(xiàn)單次轉(zhuǎn)換、連續(xù)轉(zhuǎn)換和DMA模式的A/D轉(zhuǎn)換,可以根據(jù)具體的需要選擇,在DMA模式下,允許ADC在每次設(shè)置寄存器ADCCON1~3后連續(xù)采樣,并將結(jié)果寫入外部RAM中。這種自動捕獲功能大大地方便了主從處理器之間的數(shù)據(jù)交換。
數(shù)字信號處理器TMS320F206
TMS320F206(以下簡稱F206)是TI公司生產(chǎn)的TMS320C2000系列DSP之一。是繼C2X和C5X之后推出的低價格高性能的16位定點DSP,由于它采用了改進(jìn)的哈佛結(jié)構(gòu),具有分離的程序總線和數(shù)據(jù)總線,采用四級流水線作業(yè),其運(yùn)行速度可達(dá)40MIPS,具有高速運(yùn)行的特點。同時提供豐富的指令集,增強(qiáng)的模塊化結(jié)構(gòu)設(shè)計,使它通用化得以提高,應(yīng)用領(lǐng)域不斷拓寬,現(xiàn)已成為高檔單片機(jī)的理想替代品。F206片內(nèi)有32K的閃速存儲器,用戶通過F206自帶的、符合IEEE標(biāo)準(zhǔn)1149.1的JTAG接口,可以對程序進(jìn)行仿真與調(diào)試,并將程序代碼燒錄到片內(nèi),極大地方便了用戶的系統(tǒng)設(shè)計與程序調(diào)試。
TMS320F206提供直接存儲器訪問(DMA)功能,通過使用HOLD操作允許對外部程序、數(shù)據(jù)以及I/O空間進(jìn)行直接存儲器訪問。該過程是由、兩個信號控制。外部設(shè)備可以把引腳驅(qū)動到低電平,從而請求對外部總線的控制。如果中斷線被允許,那么將觸發(fā)中斷。F206在相應(yīng)中斷時,軟件邏輯可以使處理器發(fā)出應(yīng)答信號,表示它將放棄對外部總線的控制。根據(jù),外部地址信號(A15~A0)、數(shù)據(jù)信號(D15~D0)以及存儲器控制信號(、、、、、、)被置為高阻狀態(tài),實現(xiàn)DMA功能。
系統(tǒng)硬件設(shè)計
系統(tǒng)的硬件結(jié)構(gòu)如圖1所示,存貯器62256作為DSP的全局?jǐn)?shù)據(jù)存儲器,同時又是ADmC812的外部存儲器,兩控制器分別通過總線和數(shù)據(jù)存儲器62256相連,實現(xiàn)存儲器共享。為了保證兩控制器能分別獨立地工作。在ADmC812和62256之間插入了4片74HC245進(jìn)行總線隔離。這樣,在ADmC812的控制下,每一時刻只有一個控制器訪問62256。圖中62256作為ADmC812的外部存儲器,A15為片選信號,地址范圍為8000H~FFFFH;作為F206的全局?jǐn)?shù)據(jù)存儲器,用作片選線,使用高端32K字地址范圍(8000H~FFFFH)。兩片選信號經(jīng)一與非門和62256的片選線CS2相連,實現(xiàn)片選信號的隔離。
ADmC812通過P1.0、P3.2(INT0)分別和DSP的、XF腳相連,由P1.0向DSP申請總線控制,在DSP響應(yīng)ADmC812的請求后,DSP的CPU被掛起,并出讓外部總線。ADmC812通過A15打開總線驅(qū)動器,并經(jīng)與非門后選中62256,獲得62256的控制權(quán),實現(xiàn)對62256的讀寫操作。而F206也可以通過向ADmC812請求中斷,ADmC812在響應(yīng)中斷INT0后,進(jìn)行相關(guān)事務(wù)的處理。另一方面,ADmC812通過讀引腳的電平,可以確認(rèn)F206是否被掛起;而通過對腳的控制,實現(xiàn)F206程序的分支轉(zhuǎn)移,增加系統(tǒng)的靈活性。
評論