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

          新聞中心

          EEPW首頁 > 4*4鍵盤的程序給初學(xué)者

          4*4鍵盤的程序給初學(xué)者

          ——
          作者: 時間:2007-10-19 來源:嵌入式技術(shù)論壇 收藏
          #include 

          #define uchar unsigned char
          #define uint unsigned int

          #define PORT P2//修改下面表中值的位置,就可以按自己的想法,定義鍵盤位置

          uchar code tab[16]={0xee,0xed,0xeb,0xe7,0xde,0xdd,0xdb,0xd7,0xbe,0xbd,0xbb,0xb7,0x7e,0x7d,0x7b,0x77};//這個值根據(jù)程序得出,
          uchar key;

          void Delay(uint n)
          {
                  uint ii;
                  for(ii=0;ii}

          //鍵盤
          void Scan_Key(void)
          {
                  uchar a,b,c,i;
                  PORT=0xf0;//高行,低列
                if((PORT&0xf0)!=0xf0)    //有鍵按下
                  {
                          Delay(100);     //去抖動
                          if((PORT&0xf0)!=0xf0)   //確實有鍵按下
                          {
                                  b=PORT&0xf0;   //b的值是列值,對于不同的行,同一列值是不變的,b總共就有四個值;同理行值也是四個。將它們和來確定按鍵位置。
                                  c=PORT&0x0f;
                          }
                          a=c+b;    //b的值是行值,對于不同的列,同一行值是不變的,b總共就有四個值;同理列值也是四個。將它們和來確定按鍵位置。
                          for(i=0;i<16;i++)  //查表
                          {
                                  if(tab[i]==a)
                                  {
                                          key=i;
                                          break;
                                  }
                          }
                          while((PORT&0x0f)!=0x0f);// 等待手離開按鍵
                  }
          }

          void uart_inti(void)
          {
                  TMOD=0x20;
                  PCON=0x00;
                  TH1=0xfd;
                  TL1=0xfd;
                  TR1=1;
                  SCON=0x50;
                  ES=1;
                  EA=1;
          }

          main(void)
          {
                  uart_inti();
                  while(1)
                  {  Scan_Key();  }
          }




          [/point]


          關(guān)鍵詞:

          評論


          相關(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); })();