久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3706|回復: 0
打印 上一主題 下一主題
收起左側

msp430f1612矩陣鍵盤源碼用數碼管顯示鍵值

[復制鏈接]
跳轉到指定樓層
樓主
ID:384757 發表于 2018-8-9 20:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<msp430f1612.h>
unsigned char const table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,
0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//數碼管的段位
//定義共陰極數碼管段選碼表,無小數點
static  char key;          //定義靜態變量key(用來記錄鍵盤編碼)
//系統默認時鐘源dco,時鐘aclk,頻率800k
void delayus(unsigned int t)   //延時函數
{
       unsigned int i;
       while(t--)
         for(i=1330;i>0;i--);     //實際測得時間1ms,根據示波器
}
char keyscan(void)                //掃描模塊
{
      char sccode,recode;          //定義行,列鍵盤編碼
      P3OUT=0x00;                 //p3輸出端口全部置低
      if((P3IN&0xf0)!=0xf0)          //去掉抖動模塊,判斷是否有鍵抖動,如果是返回
      {
           delayus(20);             //延時20ms
          if((P3IN&0xf0)!=0xf0)     //再次判斷是否有鍵抖動,如果是返回
          {
             sccode=0xfe;           //將第一行置低(p3.0),用來掃描
             while((sccode&0x0f)!=0x0f)  //按位與&;盡量取0.行掃描完成   
             {
                 P3OUT=sccode;           //輸出行掃描碼                  
                 if((P3IN&0XF0)!=0XF0)   //當前有鍵閉合 ,因為in是后四位所以f0                  
                 {
                   recode=(P3IN&0XF0)|0X0F; //讀取高4位列值,低四位置一(配合行碼)
                   //按位或盡量取1
                   key=(sccode&recode);     //行和列組合得到鍵盤編碼      
                   return key;              //返回靜態變量key
                  
                 }
                 else                       //所掃描行沒有鍵閉合
                  
                 {
                  
                  sccode=(sccode<<1)|0x01; //行掃描碼左移一位,就換到了下一行置0
                  
                   //按位或盡量取1
                 }        
           
             }
               
          }
         
           return 0xff;//沒有鍵閉合則返回
               
      }
      
       return 0xff;//沒有鍵閉合則返回               ?
}
   
  
  char getkeyval(char keycode)
  {
    char keyval;
    switch(keycode)  
    {
    case 0x77:           //0b01110111
      keyval=0  ;
      break;
       case 0x7b :       //0b01111011
      keyval= 1 ;
      break;
       case 0x7d:        //0b01111101
      keyval= 2 ;
      break;
       case 0x7e:        //
      keyval=  3;
      break;
       case 0xb7:
      keyval=  4;
      break;
       case 0xbb:
      keyval=  5;
      break;
       case 0xbd:
      keyval=  6;
      break;
       case 0xbe:
      keyval=  7;
      break;
       case 0xd7:
      keyval=  8;
      break;
       case 0xdb:
      keyval=  9;
      break;
       case 0xdd:
      keyval=  10;
      break;
       case 0xde:
      keyval=  11;
      break;
       case 0xe7:
      keyval=  12;
      break;
       case 0xeb:
      keyval=  13;
      break;
       case 0xed :
      keyval=  14;
      break;
       case 0xee:
      keyval=15  ;
      break;
    default :keyval =255;
    }
    return keyval;

   
  }
      
      void main(void)
      {
      
          WDTCTL=WDTPW+WDTHOLD;//關狗
          P1DIR=0XFF;          //全部輸出
          P1SEL=0X00;          //功能設置為普通i/o端口
          P1OUT=0X00;          //p1out全部置低
          P3DIR=0X0F;        //p3.4~p3.7鍵盤輸入,p3.0~p3.3鍵盤掃描信號輸出輸出
          while(1)
          {  
             key=getkeyval(keyscan());  //key取掃描值
             if(key!=255)               //key是正常值,按鍵有效
             {
               P1OUT=table[key];       //p1out輸出掃描碼顯示在數碼管上
                    
             }
           

         }
   
            
              
              
      }
        
        
        
        
        
        
        
        
      }

矩陣鍵盤.zip

1.54 KB, 下載次數: 18, 下載積分: 黑幣 -5

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 高清免费在线 | 亚洲一区av在线 | 久久亚洲国产精品日日av夜夜 | 毛片在线看片 | 午夜私人影院在线观看 | 国产综合在线视频 | 成人免费影院 | 国产精品高潮呻吟久久aⅴ码 | 精品福利一区 | 久久狠狠 | 日本天堂一区 | 久久久精品一区 | 五月婷婷丁香婷婷 | 国产一级大片 | 久久久久av | 涩涩视频在线观看 | 欧美婷婷 | 久久久久网站 | www.精品一区 | 久久久久国色av免费观看性色 | 欧美国产精品一区二区三区 | 欧美日韩视频在线播放 | 日韩一区二区三区视频 | 精品国产乱码一区二区三 | 欧美日韩精品中文字幕 | 超碰操 | 99热热精品 | 国产精品明星裸体写真集 | 亚洲国产成人精品久久久国产成人一区 | 欧美精品1区 | 久久精品国产一区二区电影 | 99成人| 久久精品国产一区老色匹 | 99热在线播放 | 欧美一区日韩一区 | 久久九九99| 最新中文字幕在线 | 欧美一区二区三区精品免费 | 99欧美精品 | 国产男女猛烈无遮掩视频免费网站 | 一级午夜aaa免费看三区 |