#include <REGX52.H>
#include "Delay.h"
/**
* @brief 矩阵键盘读取按键键码
* @param 无
* @retval KeyNumber 按下按键的键码值
如果按键按下不放,程序会停留在此函数,松手的一瞬间,返回按键键码,没有按键按下时,返回0
*/
unsigned char MatrixKey()
{
unsigned char KeyNumber=0;
P1=0xFF;
P1_3=0;
if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=1;}
if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=5;}
if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=9;}
if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=13;}
P1=0xFF;
P1_2=0;
if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=2;}
if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=6;}
if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=10;}
if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=14;}
P1=0xFF;
P1_1=0;
if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=3;}
if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=7;}
if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=11;}
if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=15;}
P1=0xFF;
P1_0=0;
if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=4;}
if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=8;}
if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=12;}
if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=16;}
return KeyNumber;
}
没有合适的资源?快使用搜索试试~ 我知道了~
轻松学51单片机-基于普中科技开发板练习蓝桥杯及机器人大赛等(3-数码管)
共43个文件
pdsprj:13个
obj:5个
c:5个
0 下载量 24 浏览量
2024-06-01
10:48:29
上传
评论
收藏 1.17MB RAR 举报
温馨提示
轻松学51单片机-基于普中科技开发板练习蓝桥杯及机器人大赛等(3-数码管)
资源推荐
资源详情
资源评论
收起资源包目录
2-数码管.rar (43个子文件)
2-数码管
Driver
Nixie.c 621B
Key.c 700B
Key.h 72B
MatrixKey.h 90B
Delay.h 85B
Nixie.h 98B
Delay.c 153B
MatrixKey.c 1KB
电路图
新工程.pdsprj 87KB
Project Backups
新工程 [Autosaved].pdsprj 87KB
新工程 [20240529, 08-31-25].pdsprj 95KB
新工程 [20240102, 13-08-23].pdsprj 95KB
新工程 [20240102, 13-05-37].pdsprj 94KB
新工程 [20240529, 08-31-30].pdsprj 91KB
新工程 [20240601, 10-00-32].pdsprj 87KB
新工程 [20240529, 08-40-35].pdsprj 91KB
新工程 [20240601, 09-56-56].pdsprj 87KB
新工程 [20231231, 22-52-00].pdsprj 95KB
新工程 [20240601, 10-45-12].pdsprj 87KB
新工程 [Proteus 8.13].pdsprj 82KB
新工程 [20240101, 13-35-31].pdsprj 94KB
新工程.pdsprj.DESKTOP-B2SRLON.Thinkpad.workspace 6KB
新工程.pdsprj.USER-20230401DN.Administrator.workspace 47KB
project.uvgui.Administrator 86KB
User
main.c 1024B
Objects
Delay.obj 926B
Key.obj 3KB
MatrixKey.obj 6KB
project.lnp 119B
project.hex 1KB
main.obj 5KB
Nixie.obj 3KB
project.build_log.htm 1KB
project 7KB
Listings
MatrixKey.lst 3KB
Nixie.lst 2KB
main.lst 3KB
project.m51 6KB
Key.lst 2KB
Delay.lst 1KB
project.uvopt 6KB
project.uvproj 14KB
project.uvgui.Thinkpad 72KB
共 43 条
- 1
资源评论
u010152658
- 粉丝: 59
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功