中文字幕视频在线免费_日韩在线精品_日韩视频免费看_中文字幕在线三区_午夜免费视频_日韩在线大片

單片機(jī)定時器學(xué)習(xí)匯總

來源:網(wǎng)絡(luò)

點(diǎn)擊:1210

A+ A-

所屬頻道:新聞中心

關(guān)鍵詞: 單片機(jī),定時器

      1時鐘周期=1/晶振頻率M

      1機(jī)器周期=12(51系列12T,若1T則為1)X時鐘周期 = 12(1)X(1/晶振頻率M) = 1 us(1/12 us)

      1us機(jī)器周期脈沖數(shù)=晶振頻率f/12

      假設(shè)12MHZ晶振工作在51單片機(jī)12T模式下,需要使用定時器進(jìn)行50MS定時操作,定時器工作在方式1;

      12M的晶振每秒(s)可產(chǎn)生1M(10^6 us)個機(jī)器周期

      50ms就需要50×1000 us × 1us(1機(jī)器周期)個機(jī)器周期 = 50000

      定時器在方式1工作,是16位計(jì)數(shù)器,最大值為65536(2^16),也就是能進(jìn)行最大65536次計(jì)數(shù)

      50ms定時操作需要50000個機(jī)器周期,1個機(jī)器周期=1us,所以需要50000次計(jì)數(shù)操作

      為了計(jì)數(shù)器定時器工作,需要預(yù)先填充定時器初值(初值=定時器計(jì)數(shù)最大計(jì)數(shù)次數(shù) - 所需定時計(jì)數(shù)次數(shù))

      所以需設(shè)置定時器初值15536 = 65536 -50000,即3CB0H(10進(jìn)制15536轉(zhuǎn)換成16進(jìn)制數(shù)3CB0),所以TH0=0x3c,TL0=0xb0,高位就是TH0的值,低位為TL0的值

      若假設(shè)使用11.0592MHZ的晶振,其他條件不變

      11.0592M的晶振每秒可產(chǎn)生0.9216M個機(jī)器周期,50ms就需要46080個機(jī)器周期

      定時器在方式1工作,是16位計(jì)數(shù)器,最大值為65536,所以需設(shè)置初值19456 = 65536 - 46080,即4C00H

      所以TH0=0x4c,TL0=0x00。

      推導(dǎo)方式1 ,16位定時器/計(jì)數(shù)器初值設(shè)定高8位TH0,低TL0的公式為:

      TH0=(65536- 所需計(jì)數(shù)次數(shù))/256 = 初值/256;

      TL0=(65536 - 所需技術(shù)次數(shù))%256 = 初值%256;

      為什么除以256,因?yàn)槲覀兊挠?jì)時器是兩個8位組成的,那么要把那些差值裝進(jìn)這兩個8位,計(jì)數(shù)從低8位開始,那么低8位最多能裝256個機(jī)器周期,那么256計(jì)滿了就用高8位的,就是說低8位滿一次高8位加1,那么高8位裝多少,低8位就滿了幾次,算法就是用差值除一下256取其整數(shù),剩下的,就是還剩了小于256次數(shù)的就放在低8位,就是差值 的余數(shù)。

      void timer0() interrupt 1

      {

      TH0=(65536-50000)/256;

      TL0=(65536-50000)%256;

      flag++;

      if(flag==20)//當(dāng)定時到1秒時執(zhí)行花括號里面的語句

      { }

      }

      ---------------------------------------------------------------------------------------

      at89s52,晶振頻率12m

      其程序如下:

      #include

      #include

      void timer0_iNIt()

      {

      TMOD=0x01;//方式1

      TL0=0xb0;

      TH0=0x3c;

      TR0=1;

      ET0=1;

      }

      void timer0_ISR(void) interrupt 1

      {

      TL0=0xb0;

      TH0=0x3c;//50ms中斷一次

      single++;

      if(single==20)

      { kk++;

      single=0;

      }

      }

      void main()

      {

      int kk=0;//計(jì)數(shù)器

      int single=0;

      timer0_init();

      }

     

    (審核編輯: 小王子)

    聲明:除特別說明之外,新聞內(nèi)容及圖片均來自網(wǎng)絡(luò)及各大主流媒體。版權(quán)歸原作者所有。如認(rèn)為內(nèi)容侵權(quán),請聯(lián)系我們刪除。

    主站蜘蛛池模板: 国产在线小视频 | 国产一级在线免费观看 | 亚洲欧洲日韩 | 成人av在线网 | 懂色av一区二区三区 | 日本一区二区精品视频 | 性爽视频| av免费资源 | 亚洲欧美在线免费 | 精品国偷自产国产一区 | 欧美日韩精品久久久免费观看 | 久久在线视频 | 狠狠草视频 | 中国特级毛片 | 欧美激情一区二区三区 | 亚洲精品一 | 三级黄色小视频 | 日韩福利视频导航 | 日本末发育嫩小xxxx | 精品在线一区二区 | 成人久久久久久久 | 影音先锋国产精品 | 美国特级a毛片免费网站 | 看一级片| 成人免费黄色 | 亚洲免费人成在线视频观看 | 国产精品久久天天躁 | 国产精品1区2区3区 久久免费一区 | 色偷偷888欧美精品久久久 | 在线观看中文字幕 | 久久久91精品国产一区二区三区 | 久久国内 | 国产一区成人 | 精品国产不卡一区二区三区 | 中国成人免费视频 | 在线观看日韩 | 日日操狠狠操 | 一本大道久久a久久精二百 国产欧美视频一区二区 | 视频一区二区国产 | 日韩久色 | 视频一区二区三区中文字幕 |