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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > avr atmega16做的頻率計(jì) 利用輸入捕獲功能

          avr atmega16做的頻率計(jì) 利用輸入捕獲功能

          作者: 時(shí)間:2016-11-13 來(lái)源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/201611/316377.htm


          /*****************************************
          * 基于頻率計(jì)程序設(shè)計(jì) *
          * 功 能:頻率計(jì) *
          * 時(shí)鐘頻率:內(nèi)部8M *
          頻率計(jì)最大頻率范圍。proteus測(cè)的65K 左右
          MADE BY LYQ
          *****************************************/
          #include
          #include
          #include "1602.c"
          #define uint unsigned int
          #define uchar unsigned char
          #pragma interrupt_handler timer1_capture:6
          #pragma interrupt_handler timer1_over:9
          uint Freq=0;
          uint i;
          uchar a=0;
          uchar data[6]={0,0,0,0,0,0};//顯示初值,最后一個(gè)0是結(jié)束符,方便液晶顯示


          void timer1_init()
          {
          TIMSK=(1<TCCR1B=(1<TCNT1=0X85ed;// ###定時(shí)1s#########
          TIFR=(1<//SREG=SREG&0x7f;
          }
          void hz(uint i,uchar *p) //顯示處理,+48(0x30) 0的ASCII碼。。是因?yàn)橐壕э@示的是ASCII碼
          {


          p[4]=i%10+48;//個(gè)
          p[3]=i/10%10+48;//十
          p[2]=i/100%10+48;//百
          p[1]=i/1000%10+48;//千
          p[0]=i/10000%10+48;//萬(wàn)
          }


          void main()
          {
          timer1_init();
          init_1602();//液晶初始化

          DDRD=0x00;
          PORTD=0xff;//設(shè)置D口為帶上拉電阻輸入
          SREG|=0x80;
          LCD_write_string(3,0,"MADE BY LYQ");
          LCD_write_string(11,1,"Hz");
          while(1)
          {
          if(a)
          {
          a=0;
          hz(i,data);
          LCD_write_string(6,1,data); //顯示

          }
          }
          }

          void timer1_capture()//產(chǎn)生捕獲中斷
          {
          Freq++;
          }

          void timer1_over()//每秒產(chǎn)生中斷一次
          {
          TCNT1=0X85ed;//
          i=Freq;
          a=1;
          Freq=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); })();