張根選,吳子懷
(1.蚌埠醫(yī)學院 醫(yī)學影像系,蚌埠 233000;2.蚌埠醫(yī)學院第一附屬醫(yī)院設備科,蚌埠 23000)
波形發(fā)生器是一種常用的信號源,廣泛地應用于電子電路、自動控制系統(tǒng)和教學實驗等領域.其設計方法有很多種如采用一般的數(shù)字電路的知識來完成,對于要求較高的情況下可以采用專用的DDS芯片來設計.本文則以AT89S52單片機為核心設計了可產(chǎn)生鋸齒波、三角波、正弦波等多種波形的信號發(fā)生器,波形的周期可以用程序改變,并可根據(jù)需要選擇三種信號幅度變化輸出,具有線路簡單、結(jié)構緊湊等優(yōu)點.
AT89S52提供了以下標準功能:與MCS-51產(chǎn)品兼容;具有8 K字節(jié)可在系統(tǒng)編程的Flash內(nèi)部程序存儲器,可寫/擦1000次;32個可編程I/O口線4.0~5.5 V的工作電壓范圍;全靜態(tài)操作:0 Hz~24 MHz;三級程序存儲器加密;256字節(jié)內(nèi)部RAM;全雙工異步UART串行通信通道;三個16位定時器/計數(shù)器 八個中斷源;低功耗空閑和掉電方式;通過中斷中止掉電方式;看門狗定時器;兩個數(shù)據(jù)指針;
DAC0832是8分辨率的D/A轉(zhuǎn)換集成芯片,DAC0832的主要特性參數(shù)如下:分辨率為8位;電流穩(wěn)定時間1μs;可單緩沖、雙緩沖或直接數(shù)字輸入;只需在滿量程下調(diào)整其線性度;單一電源供電(+5 V~+15 V);低功耗,200 mW.這個DA芯片以其價格低廉、接口簡單、轉(zhuǎn)換控制容易等優(yōu)點,在單片機應用系統(tǒng)中得到廣泛的應用[4][5].D/A轉(zhuǎn)換器由8位輸入鎖存器、8位DAC寄存器、8位D/A轉(zhuǎn)換電路及轉(zhuǎn)換控制電路構成.
2.1 設計思想:用AT89S52分別實時地對P3.0、P3.1、P3.2三個端口進行掃描,對應的有如果P3.0有低電平出現(xiàn)來進行波形的選擇,并且在選擇正弦波時是將00H到0FFH按照正弦波波形的變化趨勢分成255個間斷的點,形成一個正弦波取值表,用AT89S52在每一個時鐘到來時取表值通過P1口送至D/A0832轉(zhuǎn)換模擬量實現(xiàn)輸出.為了簡化設計程序的方法,三角波和方波也都建立了相應的取值表,實現(xiàn)方法同正弦波.利用P3.1的低電平的出現(xiàn)時調(diào)用延時程序來減小輸出信號波形的頻率,同樣原理利用P3.2可以增大輸出信號波形的頻率,從而實現(xiàn)了不同波形及其頻率的調(diào)節(jié).三種信號波形幅度的調(diào)整可以通過改變電阻的阻值來實現(xiàn).
2.2 硬件電路組成
AT89S52外接12 M晶振作為時鐘頻率其主要由Y1和C1、C2組成,并采用電源復位設計,復位電路采用上電復位,復位的工作原理是,通電時,電容兩端相當于短路,于是RST引腳上為高電平,然后電源通過對電容充電.RST端電壓慢慢下降,降到一定程序,即為低電平,單片機開始工作.在單片機最小系統(tǒng)基礎上再配置數(shù)模轉(zhuǎn)換芯片DAC0832和零偏移單電源軌到軌輸入/輸出運算放大器AD8571[2][3]就構成了該信號發(fā)生器的硬件電路,如下圖1所示.整個電路的電源可以采用干電池供電或者采用外接直流穩(wěn)壓電源供電.
本程序設計采用單片機KeilC51語言編寫,運行于uVision2IDE開發(fā)環(huán)境,其包括C編譯器、宏匯編器、連接/定位器、目標代碼到HEX的轉(zhuǎn)換器.整個程序的設計流程圖如圖2、圖3所示,給出了波形選擇和各種頻率減小程序設計流程圖.(波形頻率增加參見圖3頻率減小的情況)
通過使用Protel2004繪制電路原理圖及制版、焊接、軟件編程、下載、調(diào)試,到最后利用示波器對產(chǎn)生波形的測試結(jié)果表明該電路能夠很好的滿足一般對正弦波、方波及三角波的各項指標的要求.
[1]張迎新.等.C8051F系列SOC單片機原理及應用[M].北京:北京理工大學出版社,2001.
[2]米 昶.Protel2004電路設計與仿真(高等學校計算機輔助設計規(guī)劃教材)[M].機械工業(yè)出版,2006.
[3]何立民.單片機高級教程-應用與設計[M].北京航空航天大學出版社,2008.
[4]李 剛,等.ADUC845單片機原理、開發(fā)方法及應用實例[M].電子工業(yè)出版社,2006.
[5]周立功.單片機與嵌入式系統(tǒng)應用[M].北京航空航天大學出版社,2005.