找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5252|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)4*4鍵盤程序 帶接線方式

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:171253 發(fā)表于 2017-3-16 16:02 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
  1. /接線方式:P0.0~P0.7 接BIT0~BIT7 P1.0~P1.7接a~h  P2.0~P2^7 接KL ~ KH
  2. //4*4矩陣鍵盤
  3. #include<reg51.h>
  4. sbit we =P0^1;
  5. char led_mod[] = {0x3f,0x06,0X5b,0x4f,0x66,0x6d,0x7d,0x07,
  6.                                   0x7f,0x6f,0x77,0x7c,0x58,0x5e,0x79,0x71
  7. };

  8. char key_buf[] = {0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,
  9.                                   0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77
  10. };

  11. char getchar(void)
  12. {
  13.          char key_scan[] = {0xfe,0xfd,0xfb,0xf7};
  14.          char i = 0,j = 0;
  15.          for(i =0;i < 4;i++)
  16.          {
  17.                  P2 = key_scan[i];
  18.                 if((P2 & 0xf0)!=0xf0)
  19.                 {
  20.                         for(j =0 ;j < 16;j++)
  21.                         {
  22.                                 if(key_buf[j] == P2)
  23.                                 return j;
  24.                         }
  25.                
  26.                 }
  27.          }
  28.          return -1;
  29. }

  30. void main()
  31. {
  32.          char key=0;
  33.         we = 0;
  34.          P1 = 0X00;
  35.          while(1)
  36.          {
  37.                  key =getchar();
  38.                 if(key != -1)
  39.                 P1 = led_mod[key];                        
  40.         }

  41. }

復(fù)制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表