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

標題: 單片機矩陣鍵盤用Proteus仿真在數碼管顯示 [打印本頁]

作者: lumancui    時間: 2020-5-20 14:03
標題: 單片機矩陣鍵盤用Proteus仿真在數碼管顯示
矩陣鍵盤用Proteus仿真在數碼管顯示


單片機源程序如下:
  1. /*******************************************************************************  
  2. 文件名稱: main.c
  3. 作 者:   
  4. 版 本:    V1.00
  5. 說 明:    矩陣鍵盤掃描實驗
  6. 修改記錄:  
  7. *******************************************************************************/
  8. /*******************************************************************************   
  9. * 功能描述:                                                              *
  10. *          掃描矩陣鍵盤                                                  *
  11. *          當有鍵按下時按照按鍵的位置                                    *
  12. *          顯示當前的鍵值

  13. *接線說明:P00~P07-SA~SG,P10~P13-R1~R4,P14~P17-C1~C4,P20-C0                                               
  14. *******************************************************************************/
  15. #include <reg52.h>
  16. #include<intrins.h>

  17. #define uchar unsigned char
  18. #define uint unsigned int

  19. #define PSEG P0
  20. #define PKEY P1

  21. sbit C0  = P2^0;//位定義

  22. void delayms(uint);
  23. uchar scan(void);

  24. uchar code seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
  25. /**********主函數******************************************/
  26. void main(void)
  27. {
  28.         uchar key;
  29.         C0=1;
  30.         while(1)
  31.         {
  32.                 key=scan();     //讀取鍵盤值
  33.                 if(key!=16)
  34.                 PSEG=seg[key];  //顯示
  35.         }
  36. }
  37. /***********延時函數***************************************/
  38. void delayms(uint j)
  39. {
  40. uchar i;
  41. for(;j>0;j--)
  42.           {
  43.          i=250;
  44.             while(--i);
  45.             i=249;
  46.             while(--i);
  47.            }
  48. }
  49. /***********鍵盤掃描函數***********************************/
  50. uchar scan(void)
  51. {
  52. uchar k=16,m,n,in;
  53. PKEY=0xf0;                //掃描所有行
  54. if((PKEY&0xf0)!=0xf0)
  55.         {
  56.         for(m=0;m<4;m++)
  57.                 {
  58.                  PKEY=~(0x01<<m);
  59.                  for(n=0;n<4;n++)
  60.                         {
  61.                          in=PKEY;
  62.                          in=in>>(4+n);
  63.                          if((in&0x01)==0)
  64.                                 {
  65.                                  delayms(10);
  66.                                  if((in&0x01)==0){k=n+m*4;break;}
  67.                                 }
  68.                         }
  69.                  if(k!=16){break;}
  70.                 }
  71.         }
  72. return(k);
  73. }
復制代碼

所有資料51hei提供下載:
Proteus.zip (24.5 KB, 下載次數: 28)







歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产视频导航 | 红桃视频一区二区三区免费 | 国产高清精品在线 | 日本精品一区二区 | 亚洲欧美中文字幕在线观看 | 成人毛片一区二区三区 | 日本黄色不卡视频 | 亚洲欧美日韩精品久久亚洲区 | 国产免费一级一级 | 久久成人国产精品 | 日本不卡一区 | 97精品超碰一区二区三区 | 中文字幕99 | 国产精品久久av | 亚洲视频三 | 亚洲精品视频一区二区三区 | 在线婷婷 | 天天躁日日躁狠狠躁2018小说 | 欧美一区二区三区久久精品视 | 一级爱爱片 | 二区三区视频 | 欧洲成人午夜免费大片 | 亚洲综合视频 | 国产网站在线免费观看 | 人人鲁人人莫人人爱精品 | 国产精品一区在线观看 | 欧美影院| av一级一片 | 久久久入口 | 天天色图 | 国产99精品 | 日本网站免费在线观看 | 欧美日韩综合 | 一本一道久久a久久精品综合 | 日韩在线视频网址 | 欧美日韩在线一区二区 | 久久久91 | 日韩在线欧美 | 国产精品自产av一区二区三区 | 久久亚洲精品久久国产一区二区 | 久久久精品一区二区三区四季av |