最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

如何基于51單片機(jī)利用定時(shí)器的實(shí)現(xiàn)PWM的方法詳細(xì)概述

出處:電子說(shuō) 發(fā)布于:2018-06-13 14:53:13

  51單片機(jī)是可以輸出PWM的,比較的麻煩。此時(shí)需要用到內(nèi)部定時(shí)器來(lái)實(shí)現(xiàn),可用兩個(gè)定時(shí)器實(shí)現(xiàn),也可以用一個(gè)定時(shí)器實(shí)現(xiàn)。
  用兩個(gè)定時(shí)器的方法是用定時(shí)器T0來(lái)控制頻率,定時(shí)器T1來(lái)控制占空比。大致的的編程思路是這樣的:T0定時(shí)器中斷讓一個(gè)I0口輸出高電平,在這個(gè)定時(shí)器T0的中斷當(dāng)中起動(dòng)定時(shí)器T1,而這個(gè)T1是讓IO口輸出低電平,這樣改變定時(shí)器T0的初值就可以改變頻率,改變定時(shí)器T1的初值就可以改變占空比。
  下面重點(diǎn)介紹用一個(gè)定時(shí)器的實(shí)現(xiàn)PWM的方法。以周期為1ms(1kHZ)為例,要產(chǎn)生其它頻率的PWM波,程序中只需作簡(jiǎn)單修改即可。用一個(gè)定時(shí)器時(shí)(如定時(shí)器T0),首先要確定PWM的周期T和占空比D,確定了這些以后,就可以用定時(shí)器產(chǎn)生一個(gè)時(shí)間基準(zhǔn)t,比如定時(shí)器溢出n次的時(shí)間是PWM的高電平的時(shí)間,則D*T=n*t,類(lèi)似的可以求出PWM低電平時(shí)間需要多少個(gè)時(shí)間基準(zhǔn)n。
  因?yàn)檫@里我們是產(chǎn)生周期為1ms(1kHZ)的PWM,所以可設(shè)置中斷的時(shí)間基準(zhǔn)為0.01ms,,然后中斷100次即為1ms。在中斷子程序內(nèi),可設(shè)置一個(gè)變量如time,在中斷子程序內(nèi),有三條重要的語(yǔ)句:
  1、當(dāng)time>=100時(shí),time清零(此語(yǔ)句保證頻率為1kHZ);
  2、當(dāng)time>n時(shí)(n應(yīng)該在0-100之間變化開(kāi)),讓單片相應(yīng)的I/O口輸出低電平;
  3、當(dāng)time<=n時(shí),讓單片相應(yīng)的I/O口輸出高電平,此時(shí)占空比就為%n。
  下面程序產(chǎn)生30%占空比的pwm:
  #include<reg51.h>
  #define uint unsigned int
  #define uchar unsigned char
  sbit PWM=P2^0;//  P2.0輸出pwm
  uchar time;  // 定義占空比的變量
  void main()
  {
  TMOD=0x01;//定時(shí)器0工作方式1
  TH0=0xff;//(65536-10)/256;//賦初值定時(shí)
  TL0=0xf7;//(65536-10)%256;//0.01ms
  EA=1;//開(kāi)總中斷
  ET0=1;//開(kāi)定時(shí)器0中斷
  TR0=1;//啟動(dòng)定時(shí)器0
  while(1)
  {
  }
  }
  void tim0() interrupt 1
  {
  TR0=0;//賦初值時(shí),關(guān)閉定時(shí)器
  TH0=0xff;//(65536-10)/256;//賦初值定時(shí)
  TL0=0xf7;//(65536-10)%256;//0.01ms
  TR0=1;//打開(kāi)定時(shí)器
  time++;
  if(time>=100)  <span style="font-family:'KaiTi_GB2312';">//1khz</span>
  time=0;
  if(time<=30)   <span style="font-family:'KaiTi_GB2312';">//占空比%30,可改</span>
  PWM=1;
  else PWM=0;
  }
  的到波形,在示波器上顯示如下圖所示

  如何基于51單片機(jī)利用定時(shí)器的實(shí)現(xiàn)PWM的方法詳細(xì)概述
  如果想修改占空比,直接在程序里面修改下面這句即可。
  if(time<=30)//占空比%30,可改占空比

關(guān)鍵詞:如何基于51單片機(jī)利用定時(shí)器的實(shí)現(xiàn)PWM的方法詳細(xì)概述單片機(jī),PWM

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線(xiàn)人工客服

買(mǎi)家服務(wù):
賣(mài)家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線(xiàn)時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!