譚志平 余亮 李超


摘 要:本文利用DAC0832芯片和AT89C51單片機設計了一種數字信號波形產生器,該信號發生器可產生鋸齒波、方波、階梯波等多種數字信號波形,波形的頻率、幅度和相位等參數均可通過修改程序進行改變,同時為了便于實際操作,在單片機上外加矩陣式鍵盤,可通過鍵盤設置信號波形參數,進行波形的選擇與改變,且利用LCD顯示波形參數。本設計具有電路結構簡單、輸出波形穩定,參數易控制等優點。
關鍵詞:數字波形發生器;AT89C51;DAC0832
波形發生器是一種信號產生器,它可以產生各種信號波形如脈沖波、鋸齒波、方波等。傳統的波形發生器一般是采用簡單的分立電子元件設計的,能夠產生簡單的模擬信號波形,然而在實際應用中模擬信號波形發生器產生的波形誤差比較大,并且幅度、頻率等不能做到精確任意可調,不能滿足特殊場合應用。因此本文利用DAC0832芯片和AT89C51單片機設計了一種可以產生任意信號波形,波形頻率、幅度大小均可隨意改變的數學信號波形發生器,同時為了方便實際操作控制,在單片機上外加矩陣式鍵盤,通過鍵盤設置波形參數,進行波形的選擇與改變,且最終利用LCD顯示信號波形參數。該設計不僅電路結構簡單、系統功能強大而且能夠很好的滿足實際應用的要求。
1 系統的總體設計方案
本方案直接采用AT89C51單片機[1]作為主控器,波形的具體產生是通過數模轉換模塊產生。系統主要包括主控器AT89C51,數模轉換電路,幅度、頻率調節電路,晶振電路以及外加復位電路組成。本設計的特點是數字信號波形的產生通過程序控制,因而波形輸出非常穩定。修改控制程序可實現波形參數的任意改變,同時波形的選擇以及參數的修改可利用外接鍵盤進行改變。
2 系統的硬件電路設計
按照設計方案,實現四種基本波形的產生,因此可利用開關狀態指示波形的輸出。利用P2口產生輸出控制信號來實現對波形參數的改變。波形輸出是通過數模轉換器來實現,可以選用數模轉換芯片DAC0832,通過調節DAC0832的參考電壓實現對輸出波形幅度的調節[2],其中 3K的電位器用于參考電壓的設置。其系統的硬件電路原理圖如圖1所示。
系統選用12MHZ晶振,其中數模轉換器芯片的地址按圖中所示接線為7000H,數字信號采樣通道接IN0,三個通道地址選擇端分別對應ADD的A、 B 和C三個端口。其中分頻器74ALS74將1MHZ的地址鎖存信號進行四分頻處理,變為250KHZ脈沖信號后,提供給AT89C51作為其工作脈沖。數模轉換器芯片DAC0832將主控器單片機輸出的數字量轉變為模擬量后作為運算放大器LM324的輸入信號,放大器LM324將其變為電壓信號輸出。
3 系統軟件設計
根據硬件設計,系統采用按鍵切換波形,因此程序控制采用最簡單的中斷方式[3],其編程思想是利用一個寄存器存儲按鍵次數,初值設為0,對應于某種波形,每執行一次中斷寄存器中的數據加1,以對應另一種波形。因此中斷程序的任務僅僅是通過改變寄存器中按鍵的數值來進行波形的切換,波形參數的改變是在主程序中進行的,是通過設置程序中的具體參數進行改變的,因此可獲得任意波形以及波形參數。
4 仿真結果
根據電路設計原理圖,導入相應的控制程序仿真結果如圖2所示,仿真結果基本滿足設計要求。
圖2 ?仿真信號波形
5 結束語
利用AT89C51和DAC0832以及基本模塊完成了總體電路的設計,并用開關來控制各種波形的發生及轉換,用單片機輸出后,經過模數轉換器生成波形,最終可以通過示波器觀察。通過仿真測試運行結果表明,系統仿真,能很好滿足實際要求。具有重要的應用價值。
參考文獻:
[1]朱定華,戴汝平,等,單片微機原理與應用[M].北京交通大學出版社,清華大學出版社.
[2]張毅剛,彭喜源,譚曉昀,曲春波.MCS-51單片機應用設計[M].哈爾濱:哈爾濱工業大學出版社,1997:53-61.
[3]江思敏,陳明.Protel電路設計教程[M].北京:清華大學出版社.