资源简介
包含线反转法和扫描法两种矩阵键盘的实现,含proteus仿真原理图及完整代码,可运行实现
代码片段和文件信息
#include
#define uchar unsigned char
uchar key=16;
uchar code leddata[]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f0x770x7c0x390x5e0x790x710x73};
void delayms(int n)
{
uchar i;
while(n--)
for(i=0;i<113;i++);
}
void scan()
{
uchar temp;
P1=0xf0; //粗扫
temp=P1&0xf0;
if(temp!=0xf0)
{
delayms(10);
temp=P1&0xf0;
if(temp!=0xf0)
{
P1=0xfe;//细扫,第一行
temp=P1&0xf0;
if(temp!=0xf0)
switch(temp)
{
case 0xe0:key=0;break;
case 0xd0:key=1;break;
case 0xb0:key=2;break;
case 0x70:key=3;break;
}
P1=0xfd;//细扫,第二行
temp=P1&0xf0;
if(temp!=0xf0)
switch(temp)
{
case 0xe0:key=4;break;
case 0xd0:key=5;break;
case 0xb0:key=6;break;
case 0x70:key=7;break;
}
P1=0xfb;//细扫,第三行
temp=P1&0xf0;
if(temp!=0xf0)
switch(temp)
{
case 0xe0:key=8;break;
case 0xd0:key=9;break;
case 0xb0:key=10;break;
case 0x70:key=11;break;
}
P1=0xf7;//细扫,第四行
temp=P1&0xf0;
if(temp!=0xf0)
switch(temp)
{
case 0xe0:key=12;break;
case 0xd0:key=13;break;
case 0xb0:key=14;break;
case 0x70:key=15;break;
}
while(P1&0xf0!=0xf0);
}
}
}
void main()
{
while(1)
{
scan();
P2=leddata[key];
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1399 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-0.c
文件 4094 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-0.LST
文件 3354 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-0.OBJ
文件 3626 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-1
文件 967 2018-04-08 21:45 矩阵式键盘\扫描法\eg3-10-1.c
文件 88525 2018-04-12 22:00 矩阵式键盘\扫描法\eg3-10-1.DSN
文件 1276 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-1.hex
文件 49 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-1.lnp
文件 6860 2018-04-12 22:04 矩阵式键盘\扫描法\eg3-10-1.M51
文件 402 2018-04-12 22:05 矩阵式键盘\扫描法\eg3-10-1.plg
文件 742 2018-04-12 22:05 矩阵式键盘\扫描法\eg3-10-1.PWI
文件 55665 2018-04-12 22:05 矩阵式键盘\扫描法\eg3-10-1.uvopt
文件 13408 2018-04-12 22:00 矩阵式键盘\扫描法\eg3-10-1.uvproj
文件 959 2018-04-08 21:45 矩阵式键盘\扫描法\eg3-10-1m.c
文件 55661 2018-04-12 22:01 矩阵式键盘\扫描法\eg3-10-1_uvopt.bak
文件 0 2018-04-12 21:39 矩阵式键盘\扫描法\eg3-10-1_uvproj.bak
文件 1450 2018-04-08 21:25 矩阵式键盘\扫描法\eg3-10-2.c
文件 88553 2018-04-08 21:46 矩阵式键盘\扫描法\Last Loaded eg3-10-1.DBK
文件 6376 2009-05-07 14:37 矩阵式键盘\扫描法\STARTUP.A51
文件 14048 2018-04-12 22:04 矩阵式键盘\扫描法\STARTUP.LST
文件 749 2018-04-12 22:04 矩阵式键盘\扫描法\STARTUP.OBJ
文件 848 2018-04-22 14:08 矩阵式键盘\线反转法\eg-10-3.c
文件 2952 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2
文件 992 2018-04-22 14:19 矩阵式键盘\线反转法\eg3-10-2.c
文件 84305 2018-04-12 22:01 矩阵式键盘\线反转法\eg3-10-2.DSN
文件 892 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2.hex
文件 49 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2.lnp
文件 2985 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2.LST
文件 5716 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2.M51
文件 2555 2018-04-22 14:20 矩阵式键盘\线反转法\eg3-10-2.OBJ
............此处省略19个文件信息
- 上一篇:校园网的设计之网络平面结构图
- 下一篇:英汉电子小词典程序
相关资源
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
- 51单片机频率计(很简单)
- 基于51单片机的智能温控器
- 基于51单片机的16*16点阵动态显示
- 基于51单片机的模数转换与数模转换
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 8051单片机教程第二十七课:单片机几
- 8051单片机教程第二十六课:矩阵式键
- 适用于STC单片机和51单片机的SX1262驱动
- 基于51单片机的计算器(C51编写,有
- 51单片机大量源码
- 基于51单片机的交通信号灯程序
- GSM监控系统51单片机设计
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
评论
共有 条评论