51单片机——矩阵键盘

一、矩阵键盘原理图

我们发现:

P17,P16,P15,P14控制行,

P13,P12,P11,P10控制列。

所以我们如果要选择第四列,只需要把整个P1先给高电位1,再把P10给低电位0。

二、代码

P1=0xFF;

P10=0;

if(P17==0){Delay(20);while(P17==0);Delay(20);KeyNumber=4;}

if(P16==0){Delay(20);while(P16==0);Delay(20);KeyNumber=8;}

if(P15==0){Delay(20);while(P15==0);Delay(20);KeyNumber=12;}

if(P14==0){Delay(20);while(P14==0);Delay(20);KeyNumber=16;}

先把P1给高电位,再把P10给低电位。选择第四列。

当按下4号按钮时,P17这一行低电位0,延迟防抖,松开后防抖。

相关推荐
HRTOS12 小时前
HRTOS 任务优先级与调度模式说明
单片机·嵌入式硬件·系统架构·51单片机
WD1372980155714 小时前
WD5030K输入工作电压 7.5‑30V,适合12A 及以内量产项目
stm32·单片机·嵌入式硬件·51单片机
HRTOS15 小时前
HRTOS 高速任务与中断嵌套的 8051 寄存器组资源说明
单片机·嵌入式硬件·系统架构·51单片机
糖糖单片机设计2 天前
基于STM32的指纹刷卡智能门禁系统设计(RC522 + AS608 + 蓝牙远程开锁 + 断电记忆)
人工智能·stm32·嵌入式硬件·51单片机·语音识别
HRTOS2 天前
HRTOS Shell继续完善:优化printf缓冲区与字符串越界保护,国庆后随新版本更新
运维·单片机·嵌入式硬件·算法·51单片机
iCxhust2 天前
51单片机电力载波应用开发(4)单片机发PC端接收
单片机·嵌入式硬件·51单片机
iCxhust3 天前
51单片机电力载波应用开发(3)载波模块点对点收发
网络·嵌入式硬件·51单片机
kkkkkkkkkk_Z10 天前
新手自学嵌入式|学习日记:从C语言到51单片机基础(GPIO、中断、定时器与PWM篇)
linux·笔记·学习·51单片机
老当益壮梁奶奶10 天前
ARM汇编学习笔记(六):【i.MX6ULL】时钟系统与定时器(EPIT & GPT)
c语言·arm开发·嵌入式硬件·学习·51单片机
AAA代码批发商10 天前
Days 50 51 单片机与 i.MX6ULL 定时器对比:Timer、EPIT、GPT 原理与实验
51单片机·定时器·imx6ull·裸机开发