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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)--矩陣鍵盤模塊(C51)

          單片機(jī)--矩陣鍵盤模塊(C51)

          作者: 時(shí)間:2016-11-22 來源:網(wǎng)絡(luò) 收藏
          #include < reg52.h >

          #include <intrins.h>//包含crol移位子函數(shù)的頭文件

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

          #define uchar unsigned char

          #defind uintunsigned int

          uchar key_value=0x19;

          uchar temp,a;

          uchar keyboard()

          {

          uchari,t=4;

          P2=0xFF;//P2口寫1

          a=0x7F;//p_value賦初始值

          i=1;

          while(t--)

          {

          a=_crol_(a,1);//循環(huán)左移一位,檢測下一行

          key_scan();

          i++;

          if(i==5){ i=1; a=0x7f;}

          }

          returnkey_value;

          }

          void key_scan()

          {

          P2=a;//P2.0置零

          temp=P2; //讀P2口的值

          temp=temp&0xF0;//取高四位,都得用temp,即temp=p2,temp=temp&0xf0;

          while(temp!=0xF0)//如果高四位不全為0,則有鍵下

          {

          delay(5);//延時(shí)消抖

          while(temp!=0xF0)//再讀一次,如果高四位還是不全為0,真的有鍵按下了

          {

          temp=P2;//讀P2口的值給temp

          switch(temp)

          {

          case0xEE:key_value=0; break;

          case0xDE:key_value=1;break;

          case0xBE:key_value=2;break;

          case0x7E:key_value=3;break;

          case0xED:key_value=4;break;

          case0xDD:key_value=5;break;

          case0xBD:key_value=6;break;

          case0x7D:key_value=7;break;

          case0xEB:key_value=8;break;

          case0xDB:key_value=9;break;

          case0xBB:key_value=10; break;

          case0x7B:key_value=11; break;

          case0xE7:key_value=12; break;

          case0xD7:key_value=13; break;

          case0xB7:key_value=14; break;

          case0x77:key_value=15; break;

          }

          while(temp!=0xf0)//松手檢測

          {

          temp=P2;

          temp=temp&0xf0;

          }

          }

          }

          }

          void delay(uint z)

          {

          uintm,n;

          for(m=z;m>0;m--)

          for(n=78;n>0;n--);

          }?




          關(guān)鍵詞: 單片機(jī)矩陣鍵盤C5

          評論


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