#include "reg51.h"
unsigned char code LED_CODES[]=
{ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,//0-9
0x77,0x7c,0x39,0x5e,0x79,0x71//A,b,C,d,E
};
sbit l1=P0^0; //行线
sbit l2=P0^1;
sbit l3=P0^2;
sbit l4=P0^3;
sbit c1=P0^4; //列线
sbit c2=P0^5;
sbit c3=P0^6;
sbit c4=P0^7;
void dely()
{int i;
for(i=0;i<1000;i++);}
void led( unsigned int m)
{P2=LED_CODES[m];}
void scan() //扫描法
{unsigned int x,a,j,l=0;//a记录行号,J记录列号,l为有键按下标记
x=0xef;
for(j=0;j<4;j++)
{ P0=x; //第j列为低
if(l1==0){dely();if(l1==0)a=0;l=1;break;} //读行值
else if(l2==0){dely();if(l2==0)a=1;l=1;break;}
else if(l3==0){dely();if(l3==0)a=2;l=1;break;}
else if(l4==0){dely();if(l4==0)a=3;l=1;break;}
x=(x<<1)+1; //下一列为低
}
if(l==0)return; //无键按下返回
led(a*4+j); //计算键值并显示
}
void main()
{P2=0;
while(1)
{
scan();
}
}
protuse仿真4*4键盘和单片LED
4星 · 超过85%的资源 需积分: 10 56 浏览量
2009-12-11
21:14:13
上传
评论
收藏 95KB ZIP 举报
zjs48918
- 粉丝: 0
- 资源: 8
最新资源
- jaudiotagger音频元数据
- 基于bert4keras 和tf2的多标签文本分类源代码+数据集
- 学生信息表.html
- C#WPF音乐、视频播放器
- YINTR24373-Next-Generation_DRAM_2024-Focus_on_HBM_and_3D_DRAM.pdf
- ME2320D-VB一款N-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- java swing + mysql 自动售货机系统
- ME2319-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- 基于asp.net的宠物管理系统源码+项目说明(高分项目).zip
- 05.11+77777777777777777777
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈