找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 346|回复: 0
收起左侧

51单片机矩阵键盘数码管显示 Proteus仿真代码

[复制链接]
1348689336 发表于 2021-10-23 22:06 | 显示全部楼层 |阅读模式
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
51hei.gif

单片机源程序如下:

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int

  4. void delay1(int x){
  5.         uint i,j;
  6.         for(i=0;i<123;i++)
  7.                 for(j=0;j<x;j++);
  8. }

  9. //uchar led[]={0x00,0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0X77,0X7C,0X39,0X5e,0X79,0X71};
  10. uchar led[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0X71 };


  11. unsigned int num[]={0xee,0xed,0xeb,0xe7,0xde,0xdd,0xdb,0xd7,
  12.                                         0xbe,0xbd,0xbb,0xb7,0x7e,0x7d,0x7b,0x77};

  13. unsigned char hang[]={0xef,0xdf,0xbf,0x7f};   
  14.         uchar key_scan(){  
  15.                 uchar a,i,n;
  16.                 for(a=0;a<4;a++){         
  17.                         P1=hang[a];     
  18.                         if(P1!=hang[a]){                  
  19.                                 delay1(100);
  20.                                 if(P1!=hang[a]){                        
  21.                                         for(i=0;i<4;i++){  
  22.                                                 if(P1==num[4*a+i]){                                                
  23.                                                         n=4*a+i+1;  
  24.                                                 }               
  25.                                         }
  26.                                 }
  27.                         }
  28.         }
  29.         return n;  
  30. }

  31. main()      
  32. {
  33.         P2=0XFE;
  34.         while(1)
  35.         {
  36.                 P0=led[key_scan()];
  37.         }
  38. }
  39.         
  40.         
复制代码

Proteus7.5版本的dsn工程文件下载:
51单片机_矩阵键盘.zip (66.34 KB, 下载次数: 21)

评分

参与人数 1黑币 +10 收起 理由
admin + 10 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表