基于ATmegal28控制器和CH375接口的高速數據采集系統
1 引言
在核探測領域中,需要對各種高速信號進行采集處理,目前常用的方式是在PC機中安裝數據采集卡,如ISA卡、PCI卡。這些卡由于采用可編程邏輯器件(PLD)控制高速模數轉換器進行轉換,利用ISA總線(16 Mbit/s)、PCI總線(132 Mbit/s)進行數據傳送,故具有采集速率高,數據傳輸速度快,支持“即插即用”等優點。但是其安裝不方便,價格高,尤其是受計算機插槽數量、地址、中斷資源的限制,可擴展性差。筆者設計的采集系統采用AVR單片機ATmegal28作為主控制器,取代了常用的5l系列單片機,控制高速模數轉換器AD9220進行轉換,采集速率高達5 Ms/s。采用通用串行總線(USB)進行數據傳送,不僅繼承了ISA卡、PCI卡采集速度快的優點,而且克服了它們的缺點,具有易用、可擴展、快速、傳輸可靠等優點。該系統現已應用到4 MeV正離子靜電加速器的輻射防護中。
2 系統硬件設計
該數據采集系統硬件模塊總體結構如圖l所示,輸入信號幅度的范圍為0 V~5 V。
輸入信號首先進入觸發電路,該電路主要由比較器AD790和數字電位器X9241組成。AD790是一款高速、精密的電壓比較器,反應時間為45ns。通過ATmegal28可控制多種采集模式,觸發電壓可調節,可實現軟件觸發(對輸入信號進行無觸發連續采集)、后觸發(當輸入信號上升沿電壓大于觸發電壓時開始采集)和前觸發(當輸入信號上升沿電壓小于觸發電壓時停止采集)三種采集模式。圖2為后觸發采集模式的電路原理簡圖,LM136-5.O為5 V基準源,ATmegal28通過I2C總線控制X924l設定觸發電壓,比較器AD790的輸出連接到ATmegal28的中斷輸入端。當輸入端電壓大于觸發電壓時,AD790輸出低電平,以中斷的形式通知ATmega-128,使其開始數據采集。
當觸發條件滿足后,ATmegal28啟動模數轉換器AD9220進行轉換,將轉換后的數據存入數據存儲器中,待上位機查詢讀取。ATmegal28控制模數轉換與數據存儲器擴展電路如圖3所示。
ATmegal28是AVR系列中功能最強的單片機。該系列單片機運用Harvard結構(具有預取指令功能),即對程序存儲器和數據存儲器帶有不同的存儲器和總線,當執行某一指令時,下一指令預先從程序存儲器中取出,使程序可以高效率地執行,其機器周期為1個時鐘周期,絕大多數指令均為單周期指令,1 MHz的頻率有接近1 MI/s的性能。
高速模數轉換電路中,AD9220是ADI公司一款性能優良的12位高速模數轉換器,速率高達10MS/s。選擇內部參考源,用單端輸入方式來進行采樣,采樣一次需要一個時鐘周期,其速率取決于輸入時鐘的頻率,電壓輸入范圍為0 V~5 V。
評論