設(shè)計要求
以MCS-51系列單片機為控制器件,用C語言進行程序開發(fā),結(jié)合外圍電子電路,設(shè)計一款函數(shù)信號發(fā)生器系統(tǒng);
能夠產(chǎn)生正弦波、方波、三角波和鋸齒波4種波形;
擴展鍵盤輸入電路,用于切換波形類型、設(shè)定頻率大小和步進值;
LCD1602顯示電路實時顯示當(dāng)前波形類型、頻率值等信息;
波形頻率值調(diào)節(jié)范圍:10~100Hz;
頻率步進值調(diào)節(jié)范圍:0.1~10Hz;
系統(tǒng)概述
本文基于51單片機設(shè)計的函數(shù)信號發(fā)生器系統(tǒng),能夠產(chǎn)生正弦波、方波、三角波和鋸齒波4種波形,且波形頻率可調(diào),調(diào)節(jié)幅度為10~100Hz。
系統(tǒng)由5V供電模塊、AT89C51單片機最小系統(tǒng)、DAC0832模數(shù)轉(zhuǎn)換電路、LM358放大電路、LCD1602液晶顯示電路、按鍵電路和LED指示燈電路組成。
系統(tǒng)框架如下所示:

工作原理為:單片機產(chǎn)生的數(shù)字信號,經(jīng)DAC0832轉(zhuǎn)換為模擬信號,再通過LM358運算電路放大后,輸出4種頻率可調(diào)的波形。
波形的類型和頻率值由LCD液晶顯示,波形的切換和頻率的調(diào)節(jié)由按鍵控制。同時,4個不同色彩的LED分別作為不同波形的指示燈。
仿真電路圖


原理圖

仿真結(jié)果分析
打開函數(shù)信號發(fā)生器仿真文件,雙擊單片機加載Signal.hex文件(位于C程序文件夾內(nèi)),運行仿真,結(jié)果如下。
LCD1602液晶第一行顯示W(wǎng)ave:Sine,第二行顯示Freq:10.0Hz。表示當(dāng)前初始化波形為10Hz的正弦波,同時與正弦波相對應(yīng)的綠色LED燈點亮。
此外,系統(tǒng)會自動彈出示波器窗口,顯示該波形。本系統(tǒng)中,信號輸出端接示波器的A通道。


仿真運行時,如果不小心關(guān)閉示波器窗口或者未彈出示波器窗口,鼠標(biāo)右擊示波器,在下拉菜單中點擊Digtal Oscilloscope即可恢復(fù)。
系統(tǒng)中,四個按鍵用于控制波形類型的切換、頻率值的增減以及頻率步進值的增減。
點擊“切換”鍵,可實現(xiàn)正弦波、方波、三角波和鋸齒波4種波形間的來回切換;
在波形頻率顯示模式下,“增加”和“減少”鍵用于增減當(dāng)前波形的頻率大小,系統(tǒng)默認頻率步進值為0.1,即按下一次“增加”或“減少”鍵,頻率的改變幅度為0.1Hz。
例如,我們將波形切換至方波,將其頻率設(shè)定為14.5Hz,結(jié)果如下。此時,與方波對應(yīng)的紅色LED燈點亮。


當(dāng)按下“步進”鍵后,系統(tǒng)進入步進調(diào)節(jié)模式,如下圖所示。LCD顯示Step value:0.1,表示當(dāng)前步進值為0.1Hz。此時,“增加”和“減少”鍵,用于改變步進值的大小。

例如,我們設(shè)定頻率步進值為3Hz,結(jié)果如下所示。設(shè)定完成后,再次按下“步進”鍵,系統(tǒng)退出步進調(diào)節(jié)模式,返回頻率顯示模式。這時,按下“增加”或“減少”鍵,頻率值的改變幅度就為3Hz。

下面,我們設(shè)置系統(tǒng)輸出頻率為50Hz的三角波和80Hz的方波,結(jié)果如下。




綜上所述,函數(shù)信號發(fā)生器仿真電路運行效果滿足設(shè)計要求,驗證成功。
資源內(nèi)容
(1)基于51單片機的函數(shù)信號發(fā)生器設(shè)計論文完整版;
(2)Keil C程序;
(3)Proteus仿真;
(4)原理圖文件;
(5)Visio流程圖文件;
(6)元器件清單;
(7)參考資料;
資源截圖






資源獲取方法
資源獲取方法
資源獲取方法
重要的事情說三遍!?。。。。。。。。?!
由于函數(shù)信號發(fā)生器設(shè)計為我的原創(chuàng)設(shè)計,
獲取以上所有資源內(nèi)容,請搜索關(guān)注我的公-眾-號:交院小智