陳李仁+彭森

摘 要:波形發生器是一種常用的信號源,廣泛地應用于電子電路、自動控制系統和教學實驗等領域。本文所研究的信號發生器采用單片機和DAC0832結合起來,通過數字電子電路向模擬電路轉化,該系統雖然性能指標不如標準產品,但是它體積小,成本低,便于攜帶等特點,亦可作為電子隨身設備之一。本次實驗將由AT89C51單片機和DAC0832數模轉換器構成波形發生器,此波形發生器可產生方波、三角波、鋸齒波、梯形波、階梯波等多種波形,波形的幅值可以用程序進行改變,并可根據需要選擇單極性輸出,具有線路簡單、結構緊湊、價格低廉、性能優越等優點。在本設計的基礎上,加上按鍵用來更改不同波形之間的切換,實現不同波形的輸出。
關鍵詞:波形發生器;數模轉換;波形輸出
1 引言
波形的產生是通過AT89C51單片機執行某一波形發生程序,向DAC0832轉換器的輸入端按一定的規律發生數據,從而在D/A轉換電路的輸出端得到相應的電壓波形。
AT89C51單片機的最小系統有三種聯接方式。一種是兩級緩沖器型,即輸入數據經過兩級緩沖器型,即輸入數據經過兩級緩沖器后,送D/A轉換電路。第二種是單級緩沖器型,輸入數據經輸入寄存器直接送入DAC寄存器,然后送D/A轉換電路。第三種是兩個緩沖器直通,輸入數據直接送D/A轉換電路進行轉換,本設計采用單緩沖方式。
2 系統硬件及組成
2.1 系統硬件設計
本系統提供了五種不同的波形輸出,通過五個按鍵控制相應的方波,鋸齒波,三角波、梯形波和階梯波。每次只能有一個鍵按下,沒有按鍵按下時沒有波形產生,按鍵輸入信號給單片機,單片機對按鍵的情況進行處理,例如第一個按鍵按下時,系統需要產生一個方波,那么單片機循環輸出0和1,那么通過DAC0832就通過運放循環輸出高低電平,這樣系統就能夠輸出方波,同樣的道理,鋸齒波、三角波、梯形波和階梯波的產生也可以采用相似的道理。
本設計的硬件系統分為三個模塊:單片機系統模塊,DA轉換模塊,軟件設計模塊。
3 系統軟件設計原理框圖
3.1 原理框圖如圖1所示:
3.2 方波的實現過程
此波形的實現只需開始的時候設置一個初值然后直接輸出這個值就行了,輸出一段時間后,然后再重新置一個數據,然后再輸出這個數據一段時間,但是此時的時間一定要等于前面那段時間。這樣才是一個方波,如果兩個時間不相同,那就相當于一個脈沖波了。
3.3 三角波的實現過程
三角波的實現是設置一個初值,然后進行加數,同樣是加到某個數之后再進行減數,減到初值之后就再返回到先前的操作。此程序輸入的VREF的電壓是+5V,因此該波形輸出的最大頻率是初值為00H和最終值為0FFH,且步數為1,這樣輸出的波形是最大的。
3.4 鋸齒波的實現過程
鋸齒波的實現過程是首先定義一個初值然后進行加法操作,加的步數的多少則根據要求的頻率來進行。然后加到某個數之后就再重新設置為初值,再重復執行剛剛的操作,如此循環下去。在本程序中初值為00H.最大值為OFFH。
4 結論
1、晶振電路實現了模擬時鐘信號的輸出。
2、復位電路實現了電路的手動復位和按鍵復位的結合。
3、DAC0832數模轉換電路實現了電壓的輸入與模擬波形的產生。
4、單極性緩沖電路實現了波形的輸出。
5、通過調節變阻器的分壓將電壓輸入VREF端口,進行特定波形的幅值調節。
6、實驗程序完成了五種波形的產生,通過按鍵的切換進行各個波形的輸出,每當一次按鍵被按下,相應的波形輸出。
參考文獻
[1] 江世明,黃同成. 單片機原理及應用[M].北京:中國鐵道出版社, 2010.
[2] 江世明. 單片機原理及應用實驗教程[M].北京:中國鐵道出版社, 2010.
[3].周潤景. 基于proteus的電路及單片機設計與仿真[M].北京:北京航空航天大學出版社, 2010
[4].郭天祥. 51單片機C語言教程[M].北京:電子工業出版社, 2009
作者簡介
陳李仁, 邵陽學院魏源國際學院電子科學與技術專業學生
彭森, 邵陽學院信息工程系教師