脈沖信號發(fā)生器
脈沖信號發(fā)生器是信號發(fā)生器的一種。信號發(fā)生器按信號源有很多種分類方法,其中一種方法可分為混和信號源和邏輯信號源兩種。其中混和信號源主要輸出模擬波形;邏輯信號源輸出數(shù)字碼形?;旌托盘栐从挚煞譃楹瘮?shù)信號發(fā)生器和任意波形/函數(shù)發(fā)生器,其中函數(shù)信號發(fā)生器輸出標(biāo)準(zhǔn)波形,如正弦波、方波等,任意波/函數(shù)發(fā)生器輸出用戶自定義的任意波形;邏輯信號發(fā)生器又可分為脈沖信號發(fā)生器和碼型發(fā)生器,其中脈沖信號發(fā)生器驅(qū)動較小個數(shù)的的方波或脈沖波輸出,碼型發(fā)生器生成許多通道的數(shù)字碼型。如泰克生產(chǎn)的AFG3000系列就包括函數(shù)信號發(fā)生器、任意波形/函數(shù)信號發(fā)生器、脈沖信號發(fā)生器的功能。另外,信號源還可以按照輸出信號的類型分類,如射頻信號發(fā)生器、掃描信號發(fā)生器、頻率合成器、噪聲信號發(fā)生器、脈沖信號發(fā)生器等等。信號源也可以按照使用頻段分類,不同頻段的信號源對應(yīng)不同應(yīng)用領(lǐng)域。
脈沖信號發(fā)生器工作原理
單脈沖和雙脈沖波形如圖1所示。
主振級與下一級隔開,避免下一級對主振級的影響,提高頻率的穩(wěn)定度。脈寬形成級一般由單穩(wěn)態(tài)觸發(fā)器和相減電路組成,形成脈沖寬度可調(diào)的脈沖信號。放大整形級是利用幾級電流開關(guān)電路對脈沖信號進行限幅放大,以改善波形和滿足輸出級的激勵需要。輸出級滿足脈脈沖信號發(fā)生器的種類繁多,性能各異,但內(nèi)部基本電路應(yīng)包括圖2所示的幾個部分。
主振級一般由無穩(wěn)態(tài)電路組成,產(chǎn)生重復(fù)頻率可調(diào)的周期性信號。隔離級由電流開關(guān)組成,它把主振沖信號輸出幅度的要求,使脈沖信號發(fā)生器具有一定帶負(fù)載能力。通過衰減器使輸出的脈沖信號幅度可調(diào)。
脈沖信號發(fā)生器設(shè)計
利用單片機設(shè)計PWM脈沖信號發(fā)生器
PWM是脈沖寬度調(diào)制(Pulse Width Modulation)的英文縮寫,它是開關(guān)型穩(wěn)壓電源中按穩(wěn)壓的控制方式分類中的一種,而脈寬寬度調(diào)制式(PWM)開關(guān)型穩(wěn)壓電路是在控制電路輸出頻率不變的情況下,通過電壓反饋調(diào)整其占空比,從而達到穩(wěn)定輸出電壓的目的。
簡單的說,PWM是一種對模擬信號電平進行數(shù)字編碼的方法。理論上講就是電壓或電流源以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的,通的時候就是電源被加到負(fù)載上,斷的時候就是供電被斷開的時候,所以PWM信號仍然是數(shù)字的。要想達到這樣一種脈寬調(diào)制效果,模擬電壓和電流時可以直接控制。例如音響的音量控制,在簡單的模擬電路中,它的控制是由連接了一個可變電阻的旋鈕來實現(xiàn)的,其過程是擰動旋鈕,電阻值變小或變大,流過該電阻的電流也隨之增加來減小,從而改變驅(qū)動揚聲器的電流值,那么聲音也就相應(yīng)變大或變小。從這個例子來看,模擬控制是直觀而簡單的,但是并不是所有的模擬電路都是可行并且經(jīng)濟的,其中很重要的一點就是模擬電路容易隨時間漂移,它的調(diào)節(jié)過程就很困難,為了解決問題就要增加很多的電路,使得電路變得復(fù)雜并且昂貴。除此之外,模擬電路中許多的元器件會發(fā)熱,也就相對提高了電路的功耗,并且對噪聲也敏感,任何干擾或噪聲都會改變電流值的大小。
綜上所述,通過數(shù)字方式來控制模擬電路可以大幅度降低系統(tǒng)的成本和功耗,而單片機I/O口的數(shù)字輸出可以很簡單地發(fā)出一個脈沖波,在配以外部元器件就可以調(diào)節(jié)脈沖波的占空比,完成PWM的功能。本文主要介紹利用89S52系列的單片機,控制某個I/O口中一個管腳的數(shù)字輸出,生成相應(yīng)周期的脈沖波,并利用按鍵控制其占空比的調(diào)節(jié),包括了占空比自小到大和自大到校的順序及倒序可調(diào),其調(diào)節(jié)范圍廣,操作簡便,各元器件間的干擾較小,對模擬電路的控制十分有效。
1、PWM波的生成
PWM波既為數(shù)字輸出,就是其幅值只有高電平(ON)和低電平(OFF)之分,所以只要使單片機中作為PWM波輸出端的那個管腳輸出“1”和“0”,并且搭配不同的時間段,就可以形成不同周期的PWM波。舉例說明:若要生成周期為10ms的脈沖,就可以利用單片機編程指令控制其輸出端輸出“1”,并且保持一段時間tp,然后再輸出“0”,同樣使其保持一段時間tr,兩種數(shù)字輸出保持的時間必須要滿足,現(xiàn)就已生成10ms周期的脈沖波,而PWM波與該脈沖波的區(qū)別就是還要能夠調(diào)節(jié)占空比。占空比是指正半周脈寬占整個周期的比例,即高電平保持時間于周期的比值,該比值為百分?jǐn)?shù)(),因此在周期一定的情況下,調(diào)節(jié)占空比就是調(diào)節(jié)高電平保持的時間。
2、應(yīng)用編程
本文介紹的PWM波是利用單片機定時中斷去確定脈沖波的周期,并且通過兩個按鍵自增和自減某個變量送至中斷中,通過此變量去分配高低電平各自占用的時間,形成不同的占空比,即假設(shè)一個周期滿額比例值為10,則高電平保持時間的比例為該變量值,那么低電平保持時間的比例就是10減去該變量值。
如圖1所示為單片機的外部接線圖,其中省略了單片機最小系統(tǒng),此圖即可利用89SC52單片機設(shè)計出滿足周期為10ms、初始占空比為50%、占空比調(diào)節(jié)范圍為0~100%的PWM脈沖信號發(fā)生器。占空比調(diào)節(jié)范圍是指高電平保持時間為0~10ms,那么低電平保持時間就是10ms~0。P0.7腳為PWM波輸出口,作為PWM脈沖信號發(fā)生器可連接其它電路,本文僅連接示波器去觀察波形的占空比變化情況,P2.0腳為自增按鈕控制端,每按一次高電平保持時間增加1ms,P2.1腳為自減按鈕控制端,每按一次高電平保持時間減少1ms。圖2所示為初始50%占空比的波形圖以及20%、40%、60%和80%占空比的波形圖,以此看出PWM的變化。
89C52單片機生成PWM波C語言程序:
#define uint unsigned int
sbit pwm=P0^7;
sbit k1=P2^0;
sbit k2=P2^1;
bit bz;//定義一個按鍵是否松開的標(biāo)志位
uchar b;
uchar m=5;//m為控制占空比的變量,初始占空比50%
void delay(uint i)
{while(i--);}
void dingshi() interrupt 1//定時中斷
{TL0=(65536-1000)%256; //1ms初始化
TH0=(65536-1000)/256;
b++;
if(b==10) b=0; //10ms周期定時
if(b void main()
{EA=1;ET0=1;
TMOD=0x01;//定時0工作在方式1,1ms中斷1次
TL0=(65536-1000)%256;
TH0=(65536-1000)/256;
TR0=1;//開中斷
while (1)
{if((k1==0)&&(bz==0)) {delay(1110);if(k1==0){bz=1;m++;if(m==11) m=10;}}//每按一次占空比自增10%
if((k2==0)&&(bz==0)) {delay(1110);if(k2==0){bz=1;m--;if(m==255) m=0;}}//每按一次占空比自減10%
if((k1==1)&&(k2==1)) bz=0;//判斷按鍵是否松開}}
綜合硬件設(shè)計和軟件設(shè)計可以看出,利用單片機數(shù)字輸出方式可以很簡單的完成脈沖寬度的調(diào)制,無須通過對模擬電路各元器件參數(shù)的計算進行調(diào)節(jié),并且可以隨時調(diào)整輸出不同周期的脈沖波,利用該方法設(shè)計的PWM脈沖信號發(fā)生器可以很廣泛。但是此設(shè)計也有一些缺點,其占空比只能按10%的比例調(diào)節(jié),調(diào)節(jié)精度還有待提高。
-
信號發(fā)生器
+關(guān)注
關(guān)注
28文章
1480瀏覽量
109048 -
脈沖信號
+關(guān)注
關(guān)注
6文章
400瀏覽量
37088
發(fā)布評論請先 登錄
相關(guān)推薦
安捷倫81133A Agilent81134A 脈沖信號發(fā)生器
安捷倫81110A 脈沖信號發(fā)生器
示波器小技能:TDR測量線纜長度
![示波器小技能:TDR測量線纜長度](https://file.elecfans.com/web2/M00/6D/35/poYBAGM1MoCAWOOXAAAqWi8Xt8w214.png)
安捷倫81130A 脈沖發(fā)生器的卓越性能滿足各個領(lǐng)域的技術(shù)發(fā)展
![安捷倫81130A <b class='flag-5'>脈沖</b><b class='flag-5'>發(fā)生器</b>的卓越性能滿足各個領(lǐng)域的技術(shù)發(fā)展](https://file1.elecfans.com/web1/M00/F5/5C/wKgZoWc7-nCAKIXAAAHtC1sWiIM121.png)
泰克信號發(fā)生器脈沖模式應(yīng)用
![泰克<b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b><b class='flag-5'>脈沖</b>模式應(yīng)用](https://file1.elecfans.com//web2/M00/09/F6/wKgZomcXaZKAWMRVAABfyK24i6823.jpeg)
步進電機控制器電路圖 步進電機控制器的分類及其特點
![步進電機控制<b class='flag-5'>器</b>電路圖 步進電機控制<b class='flag-5'>器</b>的分類及其特點](https://file1.elecfans.com/web2/M00/F2/63/wKgZomZ5NG2AFhnAAAIafu77p9w831.jpg)
信號發(fā)生器的使用方法 信號發(fā)生器的幅值是有效值嗎
信號發(fā)生器如何輸出單脈沖信號?
脈沖信號發(fā)生器的主要功能和作用
信號發(fā)生器如何調(diào)節(jié)幅值?
脈沖信號發(fā)生器的主要原理和組成結(jié)構(gòu)
DP8000系列雙脈沖信號發(fā)生器介紹
![DP8000系列雙<b class='flag-5'>脈沖</b><b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>介紹](https://file1.elecfans.com/web2/M00/E3/66/wKgZomY8idSANph_AAhLStxLZ7w919.png)
脈沖發(fā)生器輸出的是什么信號 脈沖信號發(fā)生器原理
![<b class='flag-5'>脈沖</b><b class='flag-5'>發(fā)生器</b>輸出的是什么<b class='flag-5'>信號</b> <b class='flag-5'>脈沖</b><b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>原理](https://file1.elecfans.com/web2/M00/D1/83/wKgZomYjLXGABKIKAABHtgVjXvs851.png)
脈沖發(fā)生器的分類 脈沖發(fā)生器的怎么設(shè)置參數(shù)
![](https://file1.elecfans.com/web2/M00/C5/96/wKgaomX3gdCALr89AAMXP5A4wBI331.png)
評論