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

          新聞中心

          AVR單片機(jī)中斷

          作者: 時(shí)間:2013-01-09 來源:網(wǎng)絡(luò) 收藏

          #pragma interrupt_handler int0_isr:2

          void int0_isr(void)

          {

          //external interupt on INT0

          i++; //在中斷里進(jìn)行操作

          }

          #pragma interrupt_handler int1_isr:3

          void int1_isr(void)

          {

          //external interupt on INT1

          PORTA = 0x01; //在中斷里進(jìn)行操作

          }

          //call this routine to initialize all peripherals

          void init_devices(void)

          {

          //stop errant interrupts until set up

          CLI(); //disable all interrupts

          port_init();

          MCUCR = 0x08; //INT1 的下降沿產(chǎn)生異步中斷請求,INT0上升延

          GICR = 0xC0; //INT0和INT1使能

          TIMSK = 0x00; //timer interrupt sources

          SEI(); //re-enable interrupts

          //all peripherals are now initialized

          }

          void main(void)

          {

          init_devices();

          while(1) //死循環(huán)等待中斷

          ;

          }

          相關(guān)解釋

          #pragma interrupt_handler int0_isr:2

          中斷的約定表示方法:int0_isr有一個(gè)與之對應(yīng)的應(yīng)用程序void int0_isr(void),2為中斷向量,值越小,優(yōu)先級越高,INT0的優(yōu)先級僅次于復(fù)位。

          MCU 控制寄存器- MCUCR MCU 控制寄存器包含中斷觸發(fā)控制位與通用MCU 功能

          通用中斷控制寄存器- GICR 使能或禁用外部中斷請求

          使用過程中:為了降低干擾,中斷引腳請加上一個(gè)4.7K的上拉電阻,還可以根據(jù)實(shí)際需要,加上電容濾波,防抖動。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(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); })();