新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于AT89S51單片機的低頻信號設計及仿真研究

        基于AT89S51單片機的低頻信號設計及仿真研究

        作者: 時間:2013-08-22 來源:網絡 收藏

        摘要:文中采用單片機來設計簡易的信號發生器,通過轉換并還原了波形信號,得到了相應的方波、鋸齒波、三角波和正弦波等波形信號。在電路設計的基礎上,本文還對上述4種波形進行了波形自由轉換、相位和頻率自由調節等技術設計,并對其進行了仿真調試。
        關鍵詞:

        傳統的源或發生裝置,因其大部分采用模擬電路設計的原因,一般具有價格昂貴、輸出性能欠佳且不便于調節等問題,工程應用價值較低。為避免傳統源或發生裝置的上述技術缺點,降低技術開發成本和提高技術開發效率,文中利用可以在線編寫程序的特點,結合了DAC接口技術,設計了波形、頻率、相位均調節方便并可產生方波、三角波、鋸齒波、正弦波四種波形的技術方案。這種新的低頻信號源設計方案,可以使得波形信號的產生由單片機查表軟件產生,波形的周期依靠程序設置來改變,具有線路簡單、結構緊湊、價格低廉、性能優越等優點。

        1 設計目標和思路
        文中設計目標是完成4種波形信號輸出,即正弦波、三角波、方波和鋸齒波,并使其在低頻范圍內具有穩定穩定性好、性能可靠、體積較小、占空比調節方便等技術優勢。文中采用鍵盤控制的辦法,來實現并輸出方波、鋸齒波、三角波和正弦波等信號。另外,對頻率和幅值的變換情況,用鍵盤也能夠較好的進行控制和調整。同時,本文還將其產生的信號參數用LCD進行仿真顯示和調試。
        在設計中,首先在函數中對某個數組附值,利用來實現輸出波形信號輸出轉換,再經過功放濾波模塊處理,這樣的話,就會在示波器上觀察到不同函數值的波形信號。但是,因為函數對數組中的數附值之后并不是一次就輸出顯示出來,這就需要編寫AT89S51的控制字,使其開中斷,然后再用計數器計數。當計數器溢出時便提出中斷請求,這時調用中斷函數,將數組中一個值送到DAC0832中。這樣連續不斷的送值,最后在示波器上顯示的就是一個連續的波形。最后,為了產生不同的波形,利用獨立按鍵開關實現波形的不同頻率,來控制波形的頻率,以及利用滑動變阻器來為DAC0832提供不同的參考電壓來實現不同幅值的波形。

        2 電路原理圖
        當按下“波形選擇”鍵時,發生外部中斷,并在LCD顯示所對應的波形序號,通過AT89S51單片機執行某一段中斷波形發生程序,向DAC0 832轉換器的輸入端按一定的規律發送數據,從而在DA0832轉換電路的輸出端得到相應的電壓波形。再經過放大器的放大作用和二階低通濾波電路濾波作用,濾除高次諧波,最后在模擬示波器上顯示出更加光滑平整的目標波形。在上述的基礎上,通過選擇按下頻率增加鍵和頻率減少鍵可以改變波形的頻率,再利用滑動變阻的分壓作用,改變DAC0832的參考電壓Vref以致改變電流i,即改變參考電壓,使輸出電壓幅度隨i發生改變,從而實現幅度的調節。
        基于單片機函數信號發生器原理接線圖如圖1所示。

        本文引用地址:http://www.104case.com/article/170437.htm

        a.JPG



        3 4種波形技術分析
        文中利用定時器TMR0定時中斷與預設波形數據表配合,來實現波形生成,將定時器設定成定時方式1,在每次中斷發生時,對波形數據進行采集,或者對定時時間進行調整。從而實現當前時刻的波形數據的輸出,以及頻率的調整。
        3.1 方波技術分析
        生成方波原理:周期性翻轉輸出引腳(端口)的電平,只取兩種電平數據極限值之一:0XFF(對應輸出高電平),0X00(對應輸出低電平)。每次TMR0發生中斷時,立即翻轉端口電平:0XFF-0X00或0X00—0XFF,定時時間也不同,輸出波形頻率也不同,所以要改變輸出頻率,就要通過定時初值來控制中斷時間完成。
        相關的2個變量:iudge……………//方波當前判斷值
        DAdata…………//定義為P1口
        judge=1,DAdata=0XFF,正向翻轉;judge=0,DAdata=0X00,負向翻轉。
        3.2 鋸齒波技術分析
        生成鋸齒波的原理是每次定時器TMR0發生中斷時。并將更新后的采樣值立即通過單片機端口輸出至DAC0832進行D/A轉換成對應模擬電壓。為了控制輸出數值范圍,當采樣值增至8位最大值0XFF即255時,立即將其置0,如此周而復始連續的操作,每次從0增至255又返回0,這樣通過D/A轉換后的模擬電壓即為鋸齒波波形。對波形頻率的控制可通過改變采樣步進值,增加步進值,則采樣數值增幅變大。因此從0~255之間采樣點數減少,所以完成一個周期波形所需要時間相應變小,輸出波形頻率增大,反之亦然。但是步進若增幅過大,則采樣點數急劇減少,輸出波形離散化趨勢增加,波形變得不再連續平滑,因此可在DAC0832轉換器輸出端接上濾波電路,以濾除高次諧波,使波形趨于平滑。
        相關的2個變量:juchibo—tab[]………//鋸齒波數組
        DAdata………//定義為P1口
        3.3 三角波技術分析
        其原理與鋸齒波類似,不同的是在于當采樣值增加至最大值0XFF(255)時,在隨后的采樣時刻,采樣值減去步進值,以此更新。當采樣值減小到0時,在后續采樣時刻,采樣值則與步進值相加,以此更新。如此周而復始連續地操作,采樣值經過D/A轉換后就能輸出對稱三角波,調節頻率的方法和鋸齒波相同。
        相關2個變量:triangle_tab[]…………//三角波采樣輸出數組
        DAdata…………//定義為P1口
        3.4 正弦波技術分析
        一個正弦數值表Table(含256個元素值),此表是將一個周期的正弦波離散成256個采樣值,在每個采樣時刻,按索引值序號選取并輸出此表中相應的值,經D/A轉換后輸出與此表值對應的模擬電壓信號,則采樣完此表中256個數值即可輸出一個完整周期的正弦波。此處的所引值取代了鋸齒波或三角波中的步進值,在調節正弦波頻率時依然有兩種方法:一種是計數上限(即調節采樣周期),上限值越大,采樣周期越長,輸出波形周期也越長,頻率則越小,反之亦然。第二種是調節索引值步進,增加步進值,則采樣數值增幅變大,因此從0~255之間采樣點數減少,所以完成一個周期波形所需要時間相應變小,輸出波形頻率增大,反之亦然。但是步進若增幅過大,則采樣點數急劇減少,輸出波形離散化趨勢增加,波形變得不再連續平滑,因此可在DAC0832轉換器輸出端接上濾波電路,以濾除高次諧波,使波形趨于平滑。
        相關2個變量:sine_tab[256]………//正弦波數組
        DAdata………//定義為P1口

        模擬信號相關文章:什么是模擬信號


        51單片機相關文章:51單片機教程


        c語言相關文章:c語言教程


        負離子發生器相關文章:負離子發生器原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 六安市| 白玉县| 怀远县| 米泉市| 呈贡县| 科技| 汝南县| 陵水| 海南省| 永靖县| 元氏县| 扶沟县| 金川县| 洛浦县| 离岛区| 中超| 青龙| 浦东新区| 岳西县| 西乌珠穆沁旗| 三亚市| 武城县| 巴彦县| 虹口区| 兰西县| 台北市| 南投县| 丹寨县| 霞浦县| 晋城| 剑河县| 江西省| 开鲁县| 泸定县| 沭阳县| 中江县| 平罗县| 惠来县| 洛浦县| 满洲里市| 新邵县|