通过4个按键控制 led 等在四种显示模式之间切换。四种显示模式如下:全亮、交叉亮灭、高四位亮低四位灭、低四位亮高四位灭。 通过 switch 语句完成。
时间: 2023-08-06 21:08:26 浏览: 221
这是一段基于单片机的C语言程序代码,实现了通过4个按键控制LED灯的显示模式切换。
具体实现过程如下:
1. 定义4个按键对应的引脚和4个LED灯对应的引脚。
2. 定义4种不同的LED灯显示模式。
3. 进入一个无限循环,不断扫描按键,并根据按键状态切换LED灯的显示模式。
4. 通过switch语句根据按键状态选择不同的LED灯显示模式。
代码如下:
```
#include <reg52.h>
sbit led1 = P0^0; // 定义LED1引脚
sbit led2 = P0^1; // 定义LED2引脚
sbit led3 = P0^2; // 定义LED3引脚
sbit led4 = P0^3; // 定义LED4引脚
sbit key1 = P1^0; // 定义按键1引脚
sbit key2 = P1^1; // 定义按键2引脚
sbit key3 = P1^2; // 定义按键3引脚
sbit key4 = P1^3; // 定义按键4引脚
void allOn() // 全亮
{
led1 = 0;
led2 = 0;
led3 = 0;
led4 = 0;
}
void crossOn() // 交叉亮灭
{
led1 = 0;
led2 = 1;
led3 = 0;
led4 = 1;
}
void highOn() // 高四位亮低四位灭
{
led1 = 1;
led2 = 1;
led3 = 1;
led4 = 1;
}
void lowOn() // 低四位亮高四位灭
{
led1 = 0;
led2 = 0;
led3 = 0;
led4 = 0;
}
void main()
{
key1 = 1; // 初始化按键为高电平
key2 = 1;
key3 = 1;
key4 = 1;
while(1)
{
if (key1 == 0) // 按键1:全亮
{
allOn();
while(key1 == 0); // 等待按键释放
}
if (key2 == 0) // 按键2:交叉亮灭
{
crossOn();
while(key2 == 0); // 等待按键释放
}
if (key3 == 0) // 按键3:高四位亮低四位灭
{
highOn();
while(key3 == 0); // 等待按键释放
}
if (key4 == 0) // 按键4:低四位亮高四位灭
{
lowOn();
while(key4 == 0); // 等待按键释放
}
}
}
```
这段代码实现了通过4个按键控制LED灯的显示模式切换,是一段简单的单片机程序。
阅读全文