蓝桥杯单片机 赛后资料整理(二)——矩阵键盘

本文主要介绍了蓝桥杯单片机竞赛中的矩阵键盘使用,详细讲解了电路原理,提供了独立按键和矩阵键盘的代码模板。在电路中,某些引脚在不同配置下可作为独立按键或矩阵键盘使用。编程时需注意引脚替代,并避免在串口通信中使用特定按键,以防通信冲突导致Keil报错。
摘要由CSDN通过智能技术生成

蓝桥杯单片机 赛后资料整理(二)——矩阵键盘


本文适用于 CT107D竞赛板+ IAP15转接板

按键

电路原理

pic1
2 3脚短接时,S4 S5 S6 S7用作独立按键;1 2脚短接时,用作4x4矩阵键盘。

需要说明的是,IAP15转接板中P36/WRP37/RD分别被P42/WR P44/RD代替,编程中需要注意。
另外,P36 P37还被用于8255WR RD,在个人练习中要防止冲突。P30 P31还被用作串口通信的TXD RXD,因此,在仿真过程中按下S7 S6等按键时,计算机与MCU之间无法实现通信,此时Keil会报错。
如果要实现串口通信或者使用仿真功能的话,尽量避免使用S7 S6按键,甚至是P30 P31

代码模板

独立按键

#include<reg52.h>

sbit L1 = P0^0;
sbit L2 = P0^1;
sbit L3 = P0^2;
sbit S4 = P3^3;
sbit S5 = P3^2;
sbit S6 = P3^1;
sbit S7 = P3^0;

bit l1=1,l2=1,l3=1;		//初始熄灭

void delay100us()		//延时100us@12.000MHz
{
   
	unsigned char i, j;

	i = 2;
	j = 39;
	do
	{
   
		while (--j);
	} while (--i);
}
void delay300ms()		//延时300ms@12.000MHz
{
   
	unsigned char i, j, k;

	i = 14;
	j = 174;
	k = 224;
	do
	{
   
		do
		{
   
			while (--k);
		} while (--j);
	} while (--i);
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值