按钮开关状态输入,按下按钮SB1,LED亮,按下按钮SB2,LED灭参考程序,运用while if语句
时间: 2024-09-20 11:12:48 浏览: 18
假设我们正在编写一个简单的控制程序,使用单片机或类似设备,当按钮SB1被按下时,LED灯点亮;而当按钮SB2被按下时,LED灯熄灭。下面是一个基本的示例程序,使用了while和if语句:
```c
#include <stdio.h>
// 假设LED连接到IO口0,按钮SB1和SB2也相应地映射到IO口1和2
#define LED_PIN 0
#define SB1_PIN 1
#define SB2_PIN 2
int main() {
int led_state = 0; // 0 表示LED关闭,1表示LED打开
while (true) { // 进入无限循环
// 检查按钮SB1的状态
if (digitalRead(SB1_PIN) == HIGH) { // 如果SB1被按下(高电平)
led_state = 1; // LED开启
digitalWrite(LED_PIN, led_state); // 更新LED状态
} else {
led_state = 0; // 如果SB1松开,LED关闭
}
// 检查按钮SB2的状态
if (digitalRead(SB2_PIN) == HIGH) { // 如果SB2被按下(高电平)
led_state = 0; // LED关闭
digitalWrite(LED_PIN, led_state); // 更新LED状态
}
// 为了防止快速连续按压导致LED频繁切换,这里可以添加延时处理
delay(500); // 简单的延迟500毫秒,实际应用中可能需要更复杂的延时机制
}
}