标题: 单片机按键Proteus仿真设计 [打印本页]

作者: 斌哥哥    时间: 2020-12-8 17:24
标题: 单片机按键Proteus仿真设计
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. code uchar key_scan[4] = {0xfe,0xfd,0xfb,0xf7};
  5. code uchar key_value[16] = {0xee,0xde,0xbe,0x7e,
  6.                                                                   0xed,0xdd,0xbd,0x7d,
  7.                                                                   0xeb,0xdb,0xbb,0x7b,
  8.                                                                   0xe7,0xd7,0xb7,0x77,};
  9. code seven_seg[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  10. uchar k = 88;
  11. void delay(uint x)
  12. {
  13.         while(x--);
  14. }
  15. void display(uchar x)
  16. {
  17.         P0 = 0xff;                 //仿真时消隐
  18.         P0 = seven_seg[x % 10];
  19.         P2 = 0xfe;delay(1000);
  20.         P0 = 0xff;                        //仿真时消隐
  21.         P0 = seven_seg[x / 10];
  22.         P2 = 0xfd;delay(1000);
  23. }
  24. void main(void)
  25. {
  26.         uchar i = 0,j;
  27.         while(1)
  28.         {
  29.                 P3 = key_scan[i];
  30.                 if(P3 != key_scan[i])
  31.                 {
  32.                         delay(200);
  33.                         for(j = 0;j <= 16;j++)
  34.                         {
  35.                                 if(P3 == key_value[j])
  36.                                 k = j;
  37.                         }
  38.                 }
  39.                 display(k);
  40.                 i++;
  41.                 if(i >= 4)
  42.                 i = 0;
  43.         }
  44. }
复制代码
全部资料51hei下载地址:
-单片机的按键.zip (440.67 KB, 下载次数: 10)

作者: sc6950    时间: 2020-12-8 23:34
大佬你好,能帮忙看个题目吗




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1