欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 51單片機PWM調寬原理 [打印本頁]

作者: 朝朝1    時間: 2021-2-24 22:55
標題: 51單片機PWM調寬原理
PWM脈寬調制,是靠改變脈沖寬度來控制輸出電壓,通過改變周期來控制其輸出頻率

什么是脈沖: 51 單片機IO口輸出一個脈沖,是指I0口發生-次高 低電平的變化


什么是占空比:是指一個脈沖時間內,高電平的時間與整個脈沖持續時間的比值。
占空比 = t / T


什么是頻率:物質在1s內完成周期性變化的次數叫做頻率,常用f表示。公式: f=1/T

實現輸出PWM信號方法:硬件實現:選擇帶PWM功能的單片機如STC12系列,內部有PWM寄存器,通過程序配置這些寄存器,指定IO口就會輸出PWM信號優點不占用CPU時間,缺點需掌握多個寄存器的配置。

軟件實現:使用51單片機定時器與中斷實現。優點編程簡單易于入門學習,缺點占用CPU時間。

使用定時器中斷實現PWM電機調速

參閱STC 89C52芯片使用手冊定時器與中斷章節內容頻率是根據周期決定的,而周期則是定時器溢出時間和占空比決定的。

周期=定時器溢出時間X占空比頻率公式: f=1/T

我們通過編程設置定時器溢出時間和周期來實現對PWM的頻率設定,再通過軟件設置驅動電機的高電平的占空比來實現調速。


課程實驗-1使用PWM實現直流電機調速多級調速

1.以約100HZ的平率,占空比最大值256,使用定時器0產生PWM信號,分別調節小車左右兩輪的前進速度。

占空比最大值為256 意思是一個周期分成256份

課程實驗-2.使用PWM實現L ED燈亮度調節

1.以約2880HZ的平率,占空比最大值40, 使用定時器0產生PWM信號,調節開發板上P1口.上所有LED燈的亮度。按S2控制LED燈變暗,按S3控制LED燈變亮。

                                                          實驗二

#include<reg52.h>
unsigned char  hz=2880; //頻率是一百
unsigned char T0RH,T0RL,pwm_led_va=0;
unsigned char pwm_t;
void count(unsigned char zkb)
{
  unsigned long tmp;
  tmp=1/hz;//算出每個周期的時間 這里其實就是1除以100赫茲,赫茲就是hz
  tmp=tmp/zkb;//定時器溢出時間 公式就是周期=定時器溢出時間*占空比
  tmp=tmp*1000000;//轉化成微妙
  tmp=tmp*1000/1085;//其實相當于微妙除以機器周期,
  T0RH=(unsigned char)(tmp>>8);
  T0RL=(unsigned char) (tmp);
}
void main()
{
TMOD=0X02;        //設置定時器0,八位自動重裝模式
TH0=T0RH;        //賦初值
TH0=T0RL;
TR0=1;
ET0=1;
EA=1;
while(1)
{
   count(40);

}
}
void timer0() interrupt 1//定時器0中斷方式1
{
pwm_t++;
if(pwm_t==40)
   {
           pwm_t=0;
           P1=0xff;
   }
      if(pwm_led_va==pwm_t)
          {
           P1=0;
          }


}







歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1