曹旻罡
【摘 要】本次實(shí)驗(yàn)選用AT89C51單片機(jī)作為實(shí)驗(yàn)的核心部件,發(fā)生器的電路組成以ICL8038函數(shù)信號(hào)作為發(fā)生器的波形產(chǎn)生頻率。通過單片機(jī)的輸入輸出口將數(shù)字編碼輸入到單片機(jī)進(jìn)行模型轉(zhuǎn)換,再產(chǎn)生對(duì)應(yīng)編碼的數(shù)字電流,最后再實(shí)現(xiàn)電流到電壓轉(zhuǎn)換,從而獲得相應(yīng)電壓實(shí)現(xiàn)運(yùn)放電壓放大器和濾波電路。單片機(jī)系統(tǒng)所產(chǎn)生的各種波形通過頻率來進(jìn)行調(diào)節(jié),頻率的范圍則通過變阻器實(shí)現(xiàn)幅度調(diào)節(jié)。
【關(guān)鍵詞】單片機(jī);多功能函數(shù);發(fā)生器
信號(hào)發(fā)生器作為自動(dòng)化工業(yè)生產(chǎn)的重要元件,其在很多領(lǐng)域中均有不同的應(yīng)用。函數(shù)發(fā)生器元件由一些基本元件共同組成,如,運(yùn)放IC、晶體管等元件構(gòu)成。當(dāng)然,伴隨著電信技術(shù)信息化和智能化發(fā)展,基于單片機(jī)的多功能函數(shù)發(fā)生器的使用將更加普及,且多功能函數(shù)發(fā)生器比傳統(tǒng)的信號(hào)發(fā)生器的優(yōu)勢(shì)更加明顯[1]。多功能函數(shù)發(fā)生器的輸出信號(hào)頻率更高、波形更加穩(wěn)定,且對(duì)于波形的幅度可以根據(jù)實(shí)際情況作出修改,使得其能夠滿足其他不同領(lǐng)域的需求。
1 理論支撐
1.1 硬件設(shè)計(jì)原理
通過編寫程序AT89C51單片機(jī)可以發(fā)出多種波形,單片機(jī)的I/O產(chǎn)生的波形以數(shù)字編碼形式呈現(xiàn),然后通過LED屏連接AT89C51單片機(jī)端輸出。AT89C51單片機(jī)的連接方式不一樣,可以分為單機(jī)緩沖器型、兩級(jí)緩沖型以及兩個(gè)緩沖器直通型。程序編寫的時(shí)候,通過控制單片機(jī)的模擬波形實(shí)現(xiàn)數(shù)字編碼,將在ICL8038單片機(jī)內(nèi)部實(shí)現(xiàn)編碼,將數(shù)字編碼轉(zhuǎn)化為不同大小的電流。單片機(jī)中產(chǎn)生的電流必須經(jīng)過電流電壓轉(zhuǎn)換,通過放大器實(shí)現(xiàn)一級(jí)運(yùn)放轉(zhuǎn)換,但是由于電壓的幅度較小,且各種內(nèi)部干擾的存在,致使單片機(jī)產(chǎn)生的波形經(jīng)過放大和濾波兩個(gè)操作才能夠產(chǎn)生比較完整的波形。函數(shù)發(fā)生器進(jìn)行波形的種類和頻率進(jìn)行控制的時(shí)候,設(shè)置了相應(yīng)的按鍵,進(jìn)而對(duì)單片機(jī)輸出編碼進(jìn)行控制。單片機(jī)的波形和頻率進(jìn)行調(diào)試的時(shí)候,需改變波形的幅度大小,還應(yīng)采用變阻器進(jìn)行波形調(diào)節(jié)[2]。
1.2 濾波實(shí)現(xiàn)電路原理
電路放大和濾波部分設(shè)計(jì)都是設(shè)計(jì)一個(gè)特定的電阻值,采用固定電阻可以節(jié)約電路板空間,電路板的尺寸可以適當(dāng)縮小。但是放大電路和濾波系統(tǒng)在調(diào)試的時(shí)候比較困難,波形的放大和濾波效果難以控制。電路放大和濾波均采用滑動(dòng)的變阻器,滑動(dòng)的變阻器對(duì)電路板的電流控制具有一定的局限性,但是由于電阻可變系統(tǒng)在進(jìn)行調(diào)試的時(shí)候顯得更加方便??梢酝ㄟ^改變電阻使得波形放大和濾波效果達(dá)到最佳的狀態(tài)。
2 多功能函數(shù)發(fā)生器系統(tǒng)設(shè)計(jì)
2.1 模塊組成
2.1.1 發(fā)生器模塊
ICL8038函數(shù)的信號(hào)發(fā)生器可以發(fā)出高精度的正弦波、矩形波、鋸齒波以及方波等不同的波形。發(fā)生器還可發(fā)出不同的頻率來改變外部電阻器和電容來實(shí)現(xiàn)快速調(diào)整。ICL8038芯片由觸發(fā)器、比較器、緩沖器、正弦波等組件組成,共同對(duì)波形的幅度和頻率進(jìn)行控制[3]。
2.1.2 電源供電模塊
電源供電模塊可以說是整個(gè)系統(tǒng)可以正常運(yùn)行的基本保障,也是系統(tǒng)完成運(yùn)行任務(wù)的基本前提。單片機(jī)長(zhǎng)期以來都面臨著功耗大、抗干擾能力弱以及程序跑飛嚴(yán)重等問題。為了避免這些問題就必須從電源下手,保證系統(tǒng)可以正常穩(wěn)定的運(yùn)行,因此在單片機(jī)多功能發(fā)生器電源供應(yīng)上必須保障系統(tǒng)用電。
2.2 主程序流程
主程序流程如圖1所示,程序開始運(yùn)行之后,首先初始化,信號(hào)頻率進(jìn)行值判斷,若判斷通過在,則顯示器中顯示出常規(guī)設(shè)置內(nèi)容。若整個(gè)信號(hào)頻率無法得到判斷或者判斷未通過,則程序會(huì)自動(dòng)返回。中斷程序?qū)崿F(xiàn)之后,確定波形和線路接入是否符合,需要對(duì)信號(hào)頻率進(jìn)行匹配,否則將重新判斷或者進(jìn)行返回操作。
2.3 硬件設(shè)計(jì)
2.3.1 主控電路設(shè)計(jì)
AT89C51單片機(jī)內(nèi)部設(shè)置包含了T1和T0,二者均可以實(shí)現(xiàn)16位可編程,主要通過計(jì)數(shù)器和定時(shí)器來完成兩種操作和四種工作模式來完成運(yùn)行。主控電路在波形發(fā)生器用作計(jì)時(shí),可以對(duì)輸出波形的每個(gè)采樣點(diǎn)延遲時(shí)間實(shí)現(xiàn)準(zhǔn)確計(jì)算。T0和T1中均采用16位計(jì)數(shù)器,只要允許計(jì)數(shù)開始,則最高可以溢出CPU中斷請(qǐng)求[4]。
2.3.2 數(shù)與模的電路轉(zhuǎn)換
若要獲得固定的波形,必須對(duì)把單片機(jī)的產(chǎn)生的信號(hào)進(jìn)行轉(zhuǎn)換,形成模擬信號(hào)。DAC0832數(shù)模轉(zhuǎn)換器則可以滿足這一要求,它由八位輸入儲(chǔ)存器、八位DAC儲(chǔ)存器、八位的D/A轉(zhuǎn)換器等組成。該數(shù)模轉(zhuǎn)換器通過分辨率的增減,實(shí)現(xiàn)對(duì)模式電力波形輸出,并實(shí)現(xiàn)了可連續(xù)調(diào)動(dòng)。若DAC0832數(shù)模轉(zhuǎn)換器的單片機(jī)選擇地址為7FFFH,P0端口發(fā)送的數(shù)據(jù)為00H,U10V作為當(dāng)時(shí)輸出電壓,若P0口將數(shù)據(jù)發(fā)送至0FFH,U1的輸出電壓值為-5V。此時(shí),電壓為0時(shí),U1作為輸出電壓,其可以得到U1/R1+U2/R2+U3/R3=0。則輸出的電壓為-5V??梢缘贸龊瘮?shù)發(fā)生器的產(chǎn)生波形輸出電壓的范圍在-5V~+5V之間,由此可得P0時(shí),發(fā)送的數(shù)據(jù)為80H,輸出電壓為0V。
2.3.3 按鍵接口電路
鍵盤接口電路原理圖是保障整個(gè)系統(tǒng)電路運(yùn)行的基礎(chǔ),也是鍵盤控制系統(tǒng)運(yùn)行的關(guān)鍵點(diǎn)。P0端口以AT89C51單片機(jī)作為核心,通過鍵盤掃描查看各個(gè)端口的單片機(jī)的連接狀況,若按鍵一旦按下則根據(jù)電路設(shè)計(jì)做出反應(yīng)。S0屬于方形輸出波、S1為正弦波、S2為三角波、S3為鋸齒波、S4為數(shù)字信號(hào)頻率為10HZ的波形、S5為100赫茲的頻率信號(hào)、S6為臨界500赫茲信號(hào)以及S7為1000赫茲頻率信號(hào)。從鍵盤接口不同,各個(gè)開關(guān)閉合之后將會(huì)產(chǎn)生不同的波形,因此這樣設(shè)計(jì)可以根據(jù)具體的需求獲得相應(yīng)的波形。
2.3.4 時(shí)鐘電路設(shè)計(jì)
時(shí)鐘電路作為獲取系統(tǒng)時(shí)間的重要元件,其組成主要由石英晶體、微調(diào)電容等組成。兩個(gè)電容元件為時(shí)鐘電路提供了振蕩頻率、穩(wěn)定效應(yīng)和容量選擇,一般選擇30pf12MHZ作為石英晶體的振蕩器頻率。由于頻率大、鋸齒波、三角波、正弦波等產(chǎn)生的時(shí)候會(huì)有所延遲,一般的額外指令時(shí)間、延遲時(shí)間以便于獲取更大的頻率波形。
2.3.5 電路顯示
電路顯示是通過LED屏幕向工作人員展示電路連接情況,顯示電路可以讓工作人員更加了解波形產(chǎn)生情況,以便于系統(tǒng)在合理情況下對(duì)波形頻率進(jìn)行顯示。LED數(shù)碼管顯示器利用了共陽極連接,主要從主機(jī)端口實(shí)現(xiàn)低電平輸出,對(duì)應(yīng)的LED等所需要顯示的數(shù)據(jù)和選型均應(yīng)該根據(jù)實(shí)際情況作出最佳選擇。
3 結(jié)束語
單片機(jī)在機(jī)械自動(dòng)化和智能化應(yīng)用中相當(dāng)廣泛,本文通過對(duì)單片機(jī)的多功能函數(shù)發(fā)生器設(shè)計(jì)進(jìn)行相關(guān)的研究。從基本的理論展開討論,然后同硬件設(shè)計(jì)、電路設(shè)計(jì)提出了一些具體的辦法,為打造多功能函數(shù)發(fā)生器提供重要參考。隨著單片機(jī)技術(shù)日益成熟,其在很多行業(yè)領(lǐng)域中應(yīng)用相當(dāng)廣泛,未來開展發(fā)生器相關(guān)設(shè)計(jì)研究將成為單片機(jī)研究核心。
【參考文獻(xiàn)】
[1]程建輝,陳波,蔣樹剛.基于ICL8038芯片的單片機(jī)可控的函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)[J].科學(xué)大眾(科學(xué)教育),2012,(03):180.
[2]史蕊,劉威鵬.基于AD9834的多功能函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2013,(33):7606-7608.
[3]樊鵬,徐順.基于單片機(jī)的多功能信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2013,(15):192.
[4]黃立新.基于單片機(jī)控制的數(shù)字函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)[J].科學(xué)技術(shù)與工程,2009,(12):3278-3282+3287.
[責(zé)任編輯:張濤]endprint