国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單片機的波形信號發(fā)生器設計與仿真

2014-12-17 00:35陳林林高雅楠
中國測試 2014年1期
關鍵詞:正弦波方波按鍵

陳林林,孫 群,高雅楠

(聊城大學機械與汽車工程學院,山東 聊城 252059)

0 引 言

波形信號發(fā)生器是一種數(shù)據(jù)信號發(fā)生器,廣泛應用于通信、測控、導航、雷達、醫(yī)療等領域,在高校實驗室中應用也十分普遍?;趩纹瑱C的簡易波形信號發(fā)生器是一種常用的信號源,它廣泛用在電子技術實驗、自動控制系統(tǒng)和其他科研領域。目前,簡易波形發(fā)生器的構成方法有很多,例如采用DDS型的任意波發(fā)生器[1-4]、采用專用的信號發(fā)生芯片MAX038以及傳統(tǒng)的AWG[5-7]。

本文在分析現(xiàn)有信號發(fā)生器工作原理的基礎上,通過分析比較后,基于單片機AT89C52和DAC0832設計了一種信號發(fā)生器,應用于高校實驗室學生實驗,具有硬件簡單,價格低廉容易對頻率和幅值進行控制等優(yōu)點。

1 測控需求分析

設計的波形發(fā)生器的測控需求如下:

1)利用單片機程序,產(chǎn)生數(shù)字式的正弦波、三角波、方波頻率可調的信號。

波形要求:

正弦波:輸出電壓值為-5V~5V,初始頻率為10Hz,頻率最大值為1 000 Hz,頻率調節(jié)步進值為10Hz。

三角波:輸出電壓為-5V~5V,初始頻率為50Hz,頻率最大值為500Hz,頻率調節(jié)步進值為50Hz。

方波:輸出電壓為-5V~5V,初始頻率為200Hz,頻率最大值為2kHz,頻率調節(jié)步進值為200Hz。

2)可通過鍵盤進行波形和頻率的切換。

3)通過LCD顯示波形類型及頻率大小。

4)設計硬件電路,選擇合適的器件,調節(jié)好器件的工作狀態(tài),保證能輸出明顯的波形信號,且不失真。

2 系統(tǒng)總體設計

2.1 系統(tǒng)總體設計方案

在系統(tǒng)總體設計時分塊完成,按照波形設定、D/A轉換、51單片機連接、鍵盤控制和顯示5個模塊來設計。最后通過聯(lián)調仿真,得出仿真結果??傮w設計框圖如圖1所示。

圖1 系統(tǒng)總體設計框圖

2.2 系統(tǒng)模塊設計

2.2.1 控制模塊

用單片AT89C52作為系統(tǒng)的主控核心。具有體積小,使用靈活,易于人機對話,數(shù)據(jù)處理良好,單指令周期和35M高速運算等優(yōu)點,且單片機功耗低,價格低廉。

在此系統(tǒng)中,采用單片機作為控制比采用FPGA實現(xiàn)更簡便。基于綜合性價比,確定選擇此方案。

2.2.2 按鍵及其顯示模塊

為了提高單片機的資源利用率和運行效率,按鍵顯示部分直接使用zlg7289擴展鍵盤,鍵盤與單片機連接。zlg7289芯片與單片機之間通信方便,而且由zlg7289對鍵盤進行自動掃描,可以去抖動,充分地提高了單片機的工作效率。

2.2.3 波形產(chǎn)生模塊

使用單片機的定時器設置定時時間,每半個周期對I/O口取反一次,從而實現(xiàn)頻率輸出。這種方案雖然在高頻頻段誤差比較大,但是編程簡單易控制,因此,確定選擇此方案。

2.2.4 D/A轉換

單片輸出的是數(shù)字信號,必須通過D/A轉換后才能模擬信號,采用DAC0832,這是8位的并行D/A轉換器,轉換速度快。

3 系統(tǒng)硬件設計

3.1 單片機控制DAC0832電路

AT89C52單片機的內部結構與MCS-51系列單片機的構成基本相同。正常情況下DAC0832與單片機的接口應為4條數(shù)據(jù)線。當DAC0832未工作時其CS輸入端應為高電平,此時芯片禁用,CLK和DO/DI的電平可任意。當要進行A/D轉換時,須先將CS使能端置于低電平并且保持低電平直到轉換完全結束。此時芯片開始轉換工作,同時由處理器向芯片時鐘輸入端CLK輸入時鐘脈沖,DO/DI端則使用DI端輸入通道功能選擇的數(shù)據(jù)信號。在第1個時鐘脈沖的下沉之前DI端必須是高電平,表示啟始信號。在第2、3個脈沖下沉之前DI端應輸入2位數(shù)據(jù)用于選擇通道功能。

3.2 按鍵電路

按鍵原理圖如2所示,對于中斷方式對波形的切換,因為INT0優(yōu)先于INT1,當按鍵按下時,首先判斷是否有幅值輸出然后判斷出現(xiàn)相應波形,當無中斷0時,即默認第二個DA轉換器的參考電壓為5V,在執(zhí)行中斷1判斷出相應的波形。第1個按鍵進行波形選擇,選擇各波形的初始頻率;第2個按鍵對頻率進行升高;第3個按鍵對頻率進行降低;第4個按鍵輸出波形。

圖2 按鍵電路圖

3.3 數(shù)、模轉換及放大電路

由于單片機輸出的是數(shù)字信號,要得到模擬信號的波形就必須對其進行數(shù)模轉換,采用DAC0832數(shù)模轉換器。由于其輸出為電流輸出,因為外加運算放大器使之裝換為電壓輸出。通過DI7~DI0與單片機P0端口相連接;CS與單片機P2.0端口相連接;WR2與單片機P2.1端口相連接。

3.4 顯示電路

圖3 D/A轉換電路

圖4 顯示電路

通過液晶1602顯示輸出的波形、頻率,其電路圖如圖3~圖6所示。其中D0~D7與單片機P1端口相連接;RS與單片機P2.2端口相連接;RW與單片機P2.3端口相連接;E與單片機P2.4端口相連接。

4 系統(tǒng)軟件設計

4.1 波形程序設計

4.1.1 正弦波設計

假設 Y=128SIN(360X/255/360×2×3.14)+128 的正弦波,DAC0832數(shù)據(jù)端口給的數(shù)據(jù)的范圍是0~255一共256個。前0~127表示X軸上方的電壓值,那么128~255是X軸下方的電壓值。那么可以得到value=128×SIN(360X/255/360×2×3.14)+128;抽樣256 個點,則 value=128SIN(360X/255/360×2×3.14)+128,X為0~255。本文采用查表的方法,把一個周期的圓分成 255份,求出每一份的正弦值 i,然后把所求得的正弦值 i×128+128,最后換算成16進制數(shù)。

4.1.2 三角波程序設計

當電壓隨時間線性增加,到一定時間又線性降低時,就形成了三角波。單片機可以輸出的數(shù)最小為0,最大為255。當輸出的值從00000000B線性增加到11111111B,然后從11111111B減小到00000000B時,就可以產(chǎn)生三角波。本文共采集了65個三角波坐標。

4.1.3 方波程序設計

當單片機輸出從00000000B直接增加到11111111B時,輸出的電壓就從低電平變到高電平了,用延時程序是高低電平保持一段時間在切換。由此,產(chǎn)生方波只需要取2個值,0x00和0XFF。

4.2 頻率改變與波形輸出程序

頻率改變與波形輸出程序框圖如圖5和圖6所示。

圖5 頻率改變程序流程圖

圖6 波形輸出程序流程圖

4.3 頻率程序設計

采用定時器來控制波形頻率,通過輸出的兩點間的延時來實現(xiàn)調頻功能。當晶振頻率為24M時,單片機的機器周期為0.5μs。假設需要10Hz的正弦波,由于正弦波的取點個數(shù)為256個,所以每個點所要的時間為1/10/256s,選用定時/計數(shù)器T0的方式1實現(xiàn),設計數(shù)器初值為X:

表1 正弦波頻率初值

表2 三角波頻率初值

表3 方波頻率初值

圖7 三角波仿真實驗圖

表1為正弦波頻率初值,表2為三角波頻率初值,表3為方波頻率初值。

4.4 鍵盤程序設計

本文鍵盤部分由4個鍵組成,分別控制波形的選擇、頻率的升、降以及波形輸出。P3.2為中斷入口地址,當P3.2=0時,說明有鍵按下。取P3口的值和0Xf0相遇,取出P3口的高4位,最后使用swatch(),當P3&0xf0=0xe0時,波形選擇鍵按下;當P3&0xf0=0xd0時,頻率升鍵按下;當P3&0xf0=0xb0時,頻率衰減鍵按下。

4.5 鍵盤程序設計

1602字符型LCD通常有14條引腳線或16條引腳線,LCD顯示流程為初始化LCD,設置顯示位置,最后顯示字符。

圖8 方波仿真實驗圖

5 仿真實驗

將各部分的程序及各子程序編好,使用Keil進行編譯,加載到Proteus軟件電路中進行仿真[8]。

5.1 三角波仿真對比圖

圖7為頻率在50,200,400Hz條件下的三角波仿真圖。

5.2 方波仿真對比圖

圖8為頻率在200,600,1 200 Hz條件下的方波仿真圖。

5.3 正弦波仿真對比圖

圖9為頻率在10,40,80Hz條件下的正弦波波仿真圖。

圖9 正弦波仿真實驗圖

表4 測量實驗結果

圖10 示波器測量的波形圖

6 波形實驗

調試好軟硬件后,利用北京普源精工生產(chǎn)的DS1102示波器測量波形質量,方波、三角波和正弦波波形如圖10所示。

在周期T-8T下對頻率的測試結果如表4所示。

誤差指標選用最小均方差(mean squared error,MSE),定義如下:

式中:(i)——理論值;

x(i)——實測值,n=8。

計算得到波形頻率測量誤差的MSE為0.04Hz,符合一般測量的精度要求。

7 結束語

1)針對測控需求,確定了函數(shù)發(fā)生器的硬件和軟件設計方案。

2)采用單片機作為控制器,直接由軟件產(chǎn)生波形信號的輸出,可通過修改軟件,還可以輸出其他任意波形。

3)基于Proteus實現(xiàn)了波形發(fā)生器的仿真測試,并做了典型波形測量實驗,波形頻率測量精度MSE為0.04Hz。

后續(xù)工作中,擬采用集成可編程DDS器件實現(xiàn)直接頻率合成,在單片機的控制與協(xié)調下輸出頻率和相位可調的信號波形,提高頻率范圍。

[1] Tierney J.A digital frequency synthesizer[J].IEEE Transactions on Audio and Electroacoustics,1971(19):48-57.

[2] 王丹,李平,文玉梅,等.采用DDS頻率合成的虛擬信號發(fā)生器研究[J].傳感技術學報,2007,20(3):586-591.

[3] Marcello S, Arianna M, Stefano B, et al.High spectral purity digital direct synthesizer implementation by means of a fuzzy approximator[J].Applied Soft Computing,2004(4):241-257.

[4] 孫群,宋卿.基于DSS技術的波形發(fā)生器設計[J].儀表技術與傳感器,2009,45(4):67-70.

[5] 董亞男,馬俊,周泉,等.基于單片機的智能信號發(fā)生器設計與仿真[J].電子測量技術,2014,37(1):62-65.

[6] 孫勤江,沈彬.基于單片機的信號發(fā)生器設計[J].石油和化工設備,2014,17(1):19-22.

[7] 周登榮,周玉榮.一種任意波形信號發(fā)生器的實現(xiàn)方法[J].重慶師范大學學報:自然科學版,2014,31(1):84-88.

[8] 范海紹.零起點學Proteus單片機仿真技術[M].北京:機械工業(yè)出版社,2012:51-54.

猜你喜歡
正弦波方波按鍵
便攜式多功能頻率計的設計與實現(xiàn)
單相正弦波變頻電源設計與實現(xiàn)
基于有限狀態(tài)機的按鍵檢測程序設計
測繪技術在土地資源管理中的應用
一種基于555定時器的方波產(chǎn)生電路設計
采用BC5016S的純正弦波逆變器設計及制作
按鍵消抖在單片機和FPGA實驗教學中的應用
基于STM32的風力擺控制系統(tǒng)的設計
一種多方向導光按鍵結構設計
一種防垢除垢的變頻電磁場發(fā)生裝置