<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          PIC 定時(shí)器0中斷

          作者: 時(shí)間:2016-11-21 來(lái)源:網(wǎng)絡(luò) 收藏
          #include //調(diào)用頭文件,可以去PICC18軟件下去查找PIC18FXX2.H
          __CONFIG(1,XT) ; //晶振為外部4M
          __CONFIG(2,WDTDIS) ; //看門狗關(guān)閉
          __CONFIG(4,LVPDIS) ; //禁止低電壓編程
          #define uint unsigned int
          #define uchar unsigned char
          uint count=0;
          void timer0init(void)
          {
          T0CS=0; //TMR0工作于定時(shí)器方式
          PSA=1; //TMR0不分頻
          TMR0IF=0; //TMR0IF是中斷標(biāo)志,定時(shí)一段時(shí)間就會(huì)輸出1
          TMR0IE=1; //允許TMR0中斷
          T0CON=0x88; //16bit定時(shí)方式
          TMR0=0xff13;//晶振4M,定時(shí)250us(就是先在TMR0L和TMR0H中存入一定的數(shù),使
          計(jì)時(shí)時(shí)間為計(jì)數(shù)器中剩余的空間次數(shù)*執(zhí)行每次的時(shí)間)
          GIE=1; //
          }
          void interrupt ISR(void)
          {
          if(TMR0IF==1) //達(dá)到了250us
          {
          TMR0=0xff13; //重新裝入初值
          TMR0IF=0; //中斷標(biāo)志位清零,方便下一次中斷產(chǎn)生時(shí)
          判斷
          count++;
          if(count==4000)
          {
          count=0;
          }
          }
          }
          void delayms(uint x)
          {
          uint i,j;
          for(i=0;i<=110;i++)
          for(j=0;j<=x;j++);
          }
          void main(void)
          {
          ADCON1=0X06; //所有IO均為數(shù)字口,模擬量輸入禁止
          TRISD=0B11111110;
          timer0init();
          while(1)
          {
          if(count==0)
          {
          RD0=1;
          delayms(400);
          }
          else RD0=0;
          }
          }
          這個(gè)效果比較單一,只能顯示一閃一閃;但定時(shí)器中斷卻能夠用在數(shù)碼管動(dòng)態(tài)掃描中,如果不用定時(shí)器中斷,只用delayms()延時(shí)函數(shù)來(lái)讓數(shù)碼管閃是不可能實(shí)現(xiàn)的。必須用定時(shí)器中斷。


          關(guān)鍵詞: PIC定時(shí)器0中

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();