• <ul id="86mes"><sup id="86mes"></sup></ul>
  • <ul id="86mes"></ul>
    <ul id="86mes"><sup id="86mes"></sup></ul>
  • 一箭雙雕 單片機(jī)占空比和方波的測量

    2014-07-11 10:13 來源:電子信息網(wǎng) 作者:鈴鐺

    單片機(jī)當(dāng)中的占空比一般是指PWM波形的占空比。這里提到的占空比就是指在一個周期之內(nèi),處在高電平的時間占整個周期的半分比。簡單的舉例來講,如果設(shè)定一個周期為1S,而高電平的持續(xù)時間達(dá)到了0.5S的話,我們就可以說在這個周期內(nèi)的占空比已經(jīng)達(dá)到了50%。本篇文章就根據(jù)占空比在單片機(jī)當(dāng)中的應(yīng)用,針對其測量和相位差的計算進(jìn)行了演示。

    1、 頻率及占空比的測量

    占空比1

    如上圖所示,當(dāng)脈沖的上升沿來臨時,將定時器打開;緊接著的下降沿來臨時,讀取定時器的值,假設(shè)定時時間為t1;下一個上升沿來臨時關(guān)閉定時器,讀取定時器的值,假設(shè)定時時間為t2。t1即為1個周期內(nèi)高電平的時間,t2即為脈沖的周期。t1/t2即為占空比,1/t2即為頻率。

    C語言程序如下:

    TH0=0; //定時器高位,初值設(shè)為0

    TL0=0; //定時器低位,初值設(shè)為0

    T0_num=0; //定時器溢出次數(shù),初值設(shè)為0

    while(pulse); //pulse為脈沖的輸入引腳

    while(!pulse); //等待上升沿來臨

    TR0=1; //打開定時器

    while(pusl1); //等待下降沿來臨

    th1=TH0;tl1=TL0;num1=T0_num; //保存定時器值

    while(!pusl1); //等待上升沿來臨

    TR0=0; //關(guān)閉定時器

    th2=TH0;tl2=TL0;num2=T0_num; //保存定時器值

    1 2 > 
    單片機(jī) 測量 占空比 方波

    相關(guān)閱讀

    暫無數(shù)據(jù)

    一周熱門