<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

      數碼管顯示矩陣鍵盤掃描值

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2012/2/4

      數碼管顯示矩陣鍵盤掃描值

       /*矩陣鍵盤掃描出鍵值,在數碼管上顯示出來
             P0口接數碼管的段選碼,P2口通過反相器接數
             管的位選碼*/
           
             #include<reg52.h>    //所用的器件是AT89S52
             #define uchar unsigned char
           
             void delayms(uchar j);    //聲明延時函數 
             uchar getkey(void);     //聲明掃描函數
             void keydisp(uchar k); //聲明顯示函數
             void disp(uchar l);     //聲明顯示子程序
           
             uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
                                 0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,
                                 0x86,0x8e};
                                   //共陽數碼管0-F顯示代碼
           
             void main(void)        //主程序
             {
                 uchar key;
                 while(1)
                 {
                  key=getkey();
                  delayms(20);
                  keydisp(key);
                 }
             }
           
             void delayms(uchar j)    //延時子程序
             {
              uchar n,m;
              for(n=0;n<j;n++)
              {
               for(m=0;m<120;m++)   //延時時間為1ms
               {;}
              }
             }
           
             uchar getkey(void)      //掃描取鍵值程序
             {
              uchar rcode,ccode;
              P1=0xf0;
              if((P1&0xf0)!=0xf0)
              {
               delayms(20);   //為消除抖動,延時20ms
               if((P1&0xf0)!=0xf0)
               {
                rcode=0xfe;   //開始發行掃描信號
                while((rcode&0x10)!=0)
                {
               P1=rcode;
                 if((P1&0xf0)!=0xf0)
                 {
                  ccode=(P1&0xf0)|0x0f;
                  do{;}while((P1&0xf0)!=0xf0); //當松鍵后顯示
                  return((~rcode)+(~ccode));    //返回掃描代碼
                 }
                 else rcode=(rcode<<1)|0x01; //此行無鍵按下,變化行掃描信號
                }
               }
              }
              return 0;   //無鍵按下,返回0
             }
           
             void keydisp(uchar k)    //顯示程序
             {
              switch(k)
              {
               case 0x11:disp(0);break;
               case 0x21:disp(1);break;
               case 0x41:disp(2);break;
               case 0x81:disp(3);break;
               case 0x12:disp(4);break;
               case 0x22:disp(5);break;
               case 0x42:disp(6);break;
               case 0x82:disp(7);break;
               case 0x14:disp(8);break;
               case 0x24:disp(9);break;
               case 0x44:disp(10);break;
               case 0x84:disp(11);break;
               case 0x18:disp(12);break;
               case 0x28:disp(13);break;
               case 0x48:disp(14);break;
               case 0x88:disp(15);break;
          default:break;
              }
            }
          
            void disp(uchar l) //顯示子程序
            {
             P0=table[l];
             delayms(20);
             P2=0x7f;   //共陽極數碼管的位選碼
            }

      Tags:單片機,矩陣鍵盤,顯示,c語言,程序  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 伊人久久亚洲综合影院| 91精品国产综合久久四虎久久无码一级| 国产精品无码久久综合| 久久亚洲精品成人综合| 亚洲国产成人久久综合一| 久久99国产综合精品| 国产成人综合亚洲| 亚洲国产综合人成综合网站00| 久久久久久久综合综合狠狠| 亚洲综合图色40p| 国产精品综合在线| 亚洲av无码国产综合专区| 色综合99久久久无码国产精品| 国产亚洲综合久久系列| 婷婷久久久五月综合色| 亚洲综合视频在线观看| 久久综合精品视频| 久久91精品综合国产首页| 国产综合无码一区二区色蜜蜜 | 狠狠狠色丁香婷婷综合久久俺| 综合五月激情二区视频| 久久综合琪琪狠狠天天| 国产精品 综合 第五页| 一本色道久久88综合日韩精品 | 天天爱天天做色综合| 色噜噜狠狠色综合网| 91精品国产综合久久久久久| 六月婷婷综合激情| 色综合久久久无码中文字幕| 亚洲欧美日韩综合俺去了| 青草久久精品亚洲综合专区 | 亚洲综合色自拍一区| 综合亚洲伊人午夜网| 国产综合精品蜜芽| 久久综合九色综合97手机观看| 久久婷婷成人综合色| 亚洲sss综合天堂久久久| 亚洲狠狠成人综合网| 国产精品国产色综合色| 色欲香天天综合网无码| 精品国产综合成人亚洲区|