学习C51单片机——按键控制LED灯(学习笔记Keil5)
·
学习C51单片机——按键控制LED灯(学习笔记Keil5)
1、基础知识
由原理图可知独立按键K1对应单片机P3.1口,当P3.1输出为0时按键按下

2、按键控制LED灯亮灭
控制单个LED灯亮灭,即把对应LED输出为0
#include <REGX52.H>
void main()
{
while(1)
{
if(P3_1==0) //如果K1按键按下
{
P2=0x00; //8个LED输出0,点亮
}
else //按键松开
{
P2=0xFF; //8个LED输出1,熄灭
}
}
}
3、控制LED状态
K1按键按下LED1灯亮,再次按下灯灭
#include <REGX52.H>
void main()
{
while(1)
{
if(P3_1==0) //如果K1按键按下
{
while(P3_1==0); //松手检测
P2_0=~P2_0; //LED1取反
}
}
}
4、控制LED灯显示流水灯
程序输入LED1点亮,按键K1按下LED1熄灭,LED2亮起,按键再次按下LED灯按顺序依次点亮
#include <REGX52.H>
unsigned char a;
void main()
{
P2=~0x01; //上电默认LED1点亮
while(1)
{
if(P3_1==0) //如果K1按键按下
{
while(P3_1==0);
a++; //a自增
if(a>=8) //限制a自增范围
a=0;
P2=~(0x01<<a); //LED的第a位点亮
}
}
}
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)