前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >51单片机学习——矩阵键盘控制led

51单片机学习——矩阵键盘控制led

作者头像
用户10922923
发布2024-07-26 12:26:37
310
发布2024-07-26 12:26:37
举报
文章被收录于专栏:兵马俑的CSDN

前言介绍

按键控制LED亮灭

代码语言:javascript
复制
#include <REGX52.H>
void main()
{
	while(1)
	{
		if(P3_4==0)
		{
			P1_1=0;
		}
		else{
			P1_1=1;
		}
	}
	
}

按键控制led状态

代码语言:javascript
复制
#include <REGX52.H>
void Delay(unsigned int xms)		//@11.0592MHz
{
	unsigned char i, j;
	while(xms)
	{
		i = 2;
		j = 199;
		do
		{
			while (--j);
		} while (--i);
		xms--;
	}
}
void main()
{
	while(1)
	{
		if(P3_4==0)
		{
			Delay(20);
			while(P3_4==0);
			Delay(20);			
			P1_1=~P1_1;
		}
	}	
}
//一开始P2_0的状态为1(不亮),当检测到P3_1=0时,便会执行取反命令,P2_0就会对当前状态进行一次取反变为0,灯泡就会点亮,再次当P3_1为0时P2_1从0又变为1(灯熄灭)

独立按键控制LED显示二进制

代码语言:javascript
复制
#include <REGX52.H>
void Delay(unsigned int xms)
{
	unsigned char i, j;
	while(xms--)
	{
		i = 2;
		j = 199;
		do
		{
			while (--j);
		} while (--i);
	}
	
}
void main()
{
	unsigned char LEDNum=0;//unsigned char LEDNum可以取0~255,每个数字都对应了8位二进制的一种变换,简单点就是8个LED灯有256种变换方式
	while(1)
	{
		if(P3_4==0)
		{
			Delay(20);
			while(P3_4==0);
			Delay(20);
			
			LEDNum++;
			P1=~LEDNum;
		}
	}
}

独立按键控制led移位

代码语言:javascript
复制
#include <REGX52.H>
unsigned char LEDNum;

void Delay(unsigned int xms)		//@11.0592MHz
{
	unsigned char i, j;
	while(xms)
	{
		i = 2;
		j = 199;
		do
		{
			while (--j);
		} while (--i);
		xms--;
	}
}
void main()
{
	P1=~0x01;
	while(1)
	{
		if(P3_4==0)
		{
			Delay(20);
			while(P3_4==0);
			Delay(20);
			
			LEDNum++;
			if(LEDNum>=8)
					LEDNum=0;
			P1=~(0x01<<LEDNum);
					
		}
		if(P3_4==0)
		{
			Delay(20);
			while(P3_4==0);
			Delay(20);
			if(LEDNum==0)
				LEDNum==7;
			else
				LEDNum--;
		}
	}
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言介绍
  • 按键控制LED亮灭
  • 按键控制led状态
    • 独立按键控制LED显示二进制
      • 独立按键控制led移位
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档