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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6589|回復(fù): 1
收起左側(cè)

4*4單片機(jī)矩陣按鍵數(shù)碼管顯示0-F字碼 Keil程序+Proteus仿真

[復(fù)制鏈接]
ID:195289 發(fā)表于 2019-4-7 11:40 | 顯示全部樓層 |閱讀模式
本帖最后由 chen3220 于 2019-4-18 16:51 編輯

4*4矩陣按鍵數(shù)碼管顯示0-F字碼
內(nèi)容包含:keil+protues
適合剛接觸單片機(jī)的同學(xué);
有什么單片機(jī)的問題大家也可以留言評論!
keil.png
protues.png
4_4矩陣按鍵.rar (199.88 KB, 下載次數(shù): 63) 后期補(bǔ)充:4*4KEYPAD行掃描程序
  1. /**********************************************************
  2. 程序功能:4*4矩陣鍵盤按照行掃描的方式進(jìn)行按鍵的確定
  3. 本程序適應(yīng)上次正反轉(zhuǎn)電平的方式進(jìn)行確定按鍵的Protues仿真圖
  4. ***********************************************************/

  5. #include<reg52.h>  //頭文件

  6. #define uchar unsigned char         //宏定義
  7. #define uint unsigned int

  8. //0-F字碼
  9. uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

  10. void delay(uint z)
  11. {
  12.         uint x,y;
  13.         for(x=0;x<z;x++)
  14.                 for(y=0;y<123;y++);
  15. }
  16. void main(void)
  17. {                                                                                                                                                                                                                                                                                                                                                                                                       
  18.         while(1)
  19.         {
  20.                 P1 = 0XF0;
  21.                 if(P1 != 0XF0)
  22.                 {
  23.                         delay(5);
  24.                         if(P1 != 0XF0)
  25.                         {
  26.                                 P1 = 0xEF;
  27.                                 if(P1 != 0xEF)
  28.                                 {
  29.                                         switch(P1)
  30.                                         {
  31.                                                 case 0xEE:P2 = 0;P0 = table[0];while(P1 == 0XEE);break;
  32.                                                 case 0xED:P2 = 0;P0 = table[4];while(P1 == 0XED);break;
  33.                                                 case 0xEB:P2 = 0;P0 = table[8];while(P1 == 0XEB);break;
  34.                                                 case 0xE7:P2 = 0;P0 = table[12];while(P1 == 0XE7);break;
  35.                                         }
  36.                                 }
  37.                                 P1 = 0xDF;
  38.                                 if(P1 != 0xDF)
  39.                                 {
  40.                                         switch(P1)
  41.                                         {
  42.                                                 case 0xDE:P2 = 0;P0 = table[1];while(P1 == 0xDE);break;
  43.                                                 case 0xDD:P2 = 0;P0 = table[5];while(P1 == 0xDD);break;
  44.                                                 case 0xDB:P2 = 0;P0 = table[9];while(P1 == 0xDB);break;
  45.                                                 case 0xD7:P2 = 0;P0 = table[13];while(P1 == 0xD7);break;
  46.                                         }
  47.                                 }
  48.                                 P1 = 0xBF;
  49.                                 if(P1 != 0xBF)
  50.                                 {
  51.                                         switch(P1)
  52.                                         {
  53.                                                 case 0xBE:P2 = 0;P0 = table[2];while(P1 == 0xBE);break;
  54.                                                 case 0xBD:P2 = 0;P0 = table[6];while(P1 == 0xBD);break;
  55.                                                 case 0xBB:P2 = 0;P0 = table[10];while(P1 == 0xBB);break;
  56.                                                 case 0xB7:P2 = 0;P0 = table[14];while(P1 == 0xB7);break;
  57.                                         }
  58.                                 }
  59.                             P1 = 0x7F;
  60.                                 if(P1 != 0x7F)
  61.                                 {
  62.                                         switch(P1)
  63.                                         {
  64.                                                 case 0x7E:P2 = 0;P0 = table[3];while(P1 == 0x7E);break;
  65.                                                 case 0x7D:P2 = 0;P0 = table[7];while(P1 == 0x7D);break;
  66.                                                 case 0x7B:P2 = 0;P0 = table[11];while(P1 == 0x7B);break;
  67.                                                 case 0x77:P2 = 0;P0 = table[15];while(P1 == 0x77);break;
  68.                                         }
  69.                                 }
  70.                         }
  71.                 }       
  72.         }         
  73. }
復(fù)制代碼
這里不添加程序包了,這里我直接把程序貼出來,有想學(xué)習(xí)的同學(xué)可以直接復(fù)制下來貼到你自己建立的工程中,
這里的行掃描程序和上述程序包中的Protues是匹配的,可以直接替換新的HEX文件進(jìn)行實驗!




評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:574901 發(fā)表于 2019-7-2 14:29 來自觸屏版 | 顯示全部樓層
請問下這個顯示屏的代碼是什么呀
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 黄一区二区三区 | 久久成人精品视频 | 少妇一级淫片aaaaaaaaa | 久久综合久久综合久久 | 久在线 | 欧美黄色大片在线观看 | 99国产精品久久久 | 久久久国产一区二区三区四区小说 | 欧美福利一区 | 91 在线 | 日韩国产免费观看 | a级免费观看视频 | www成人免费视频 | 久久网亚洲 | 成人性视频在线 | 久久久观看 | 国产黄色大片网站 | 欧美jizzhd精品欧美巨大免费 | 精品亚洲一区二区三区四区五区高 | 欧美精品久久一区 | 欧美福利| 99re6在线视频精品免费 | 毛片入口| 成人黄色av网址 | 正在播放国产精品 | 99在线播放| 亚洲欧洲日韩精品 中文字幕 | 日韩超碰在线 | 自拍第1页 | 日韩有码一区 | 亚洲成人网在线播放 | 中文字幕成人在线 | 成人久久久| 噜噜噜噜狠狠狠7777视频 | 日韩午夜电影在线观看 | 精品国产一区二区三区久久 | 欧美综合在线观看 | 嫩草最新网址 | 伊人天堂网 | 亚洲a毛片 | 国产日韩欧美一区二区 |