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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 外中斷(按鍵)控制數(shù)碼管顯示

          外中斷(按鍵)控制數(shù)碼管顯示

          作者: 時間:2016-11-24 來源:網(wǎng)絡 收藏
          #include "config.h"

          #defineuintunsigned int
          #defineucharunsignedchar
          #defineulongunsignedlong

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

          #defineSIGNALP3_5//鍵盤初始信號

          #defineKEY6P3_2//KEY6口就是INT0口
          #defineKEY2P3_3

          int num;


          // 延時約(0.001 * n)秒
          void delay(unsigned char n)
          {
          ulong i;
          do {
          i = CPUCLK / 1000;
          while(i--);
          } while (--n != 0);
          }


          void int0() interrupt 0 // 也可不判斷是否為KEY6按下,因為引發(fā)此中斷的就是KEY6鍵
          {
          if(KEY6 == 0)
          {
          delay(10);//延時消除按鍵抖動
          if (KEY6 == 0)//確定有鍵按下
          {
          num++;
          if (num > 9)
          num = 0;
          P0 = num;
          }
          while (!KEY6);//等待KEY1松開
          delay(10);//延時消除松鍵抖動
          }
          }


          void int1() interrupt 2
          {
          if(KEY2 == 0)
          {
          delay(10);//延時消除按鍵抖動
          if (KEY2 == 0)//確定有鍵按下
          {
          num--;
          if (num < 0)
          num = 9;
          P0 = num;
          }
          while (!KEY2);//等待KEY1松開
          delay(10);//延時消除松鍵抖動
          }
          }

          //外中斷初始化函數(shù)
          void int_init()
          {
          EA = 1;//開總中斷
          EX0 = 1;//開外中斷0
          IT0 = 0;//外中斷0低電平觸發(fā)方式
          EX1 = 1;
          IT1 = 0;
          }

          //主程序入口
          void main(void)
          {
          int_init();
          SIGNAL = 0;//重要??!雖然SIGNAL和IT1是同一地址,但必須初始化SIGNAL

          num = 0;
          P0 = num;

          for (;;){
          }
          }

          外中斷程序設計步驟:

          1. 開總中斷

          2. 開外中斷

          3. 設置外中斷觸發(fā)方式

          4. 中斷處理程序



          評論


          技術專區(qū)

          關閉
          看屁屁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); })();