标题:
51单片机矩阵键盘+单个数码管显示仿真
[打印本页]
作者:
drtg
时间:
2017-5-22 12:08
标题:
51单片机矩阵键盘+单个数码管显示仿真
矩阵键盘+单个数码管
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
0.png
(26.07 KB, 下载次数: 51)
下载附件
2017-5-22 16:11 上传
0.png
(75.34 KB, 下载次数: 46)
下载附件
2017-5-22 16:11 上传
单片机源程序如下:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
unsigned char code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0X88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};
void delaylms(uint i)
{
uchar j;
while(i--)
{
for(j=0;j<115;j++)
{
;
}
}
}
void display(unsigned char i)
{
P0=table[i];
}
void main(void)
{
unsigned char temp;
display(16);
while(1)
{
P1=0xf0;
temp=P1;
if(temp!=0xf0)
{
delaylms(15);
if(temp!=0xf0)
{
P1=0xfe;
temp=P1;
switch(temp)
{
case(0xee):display(0);break;
case(0xde):display(1);break;
case(0xbe):display(2);break;
case(0x7e):display(3);break;
}
P1=0xfd;
temp=P1;
switch(temp)
{
case(0xed):display(4);break;
case(0xdd):display(5);break;
case(0xbd):display(6);break;
case(0x7d):display(7);break;
}
P1=0xfb;
temp=P1;
switch(temp)
{
case(0xeb):display(8);break;
case(0xdb):display(9);break;
case(0xbb):display(10);break;
case(0x7b):display(11);break;
}
P1=0xf7;
temp=P1;
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
键盘.rar
(49.83 KB, 下载次数: 38)
2017-5-22 12:07 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
乳酸菌
时间:
2018-2-12 17:11
哇楼主太棒了,我刚好需要
作者:
asdwe9669
时间:
2018-2-14 18:37
谢谢 刚虚
作者:
a450113992
时间:
2018-4-10 21:17
厉害 666
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1