Arduino学习-按键灯

哎,别笑,总比刷抖音强点吧

1、效果

2、代码

csharp 复制代码
const int buttonPin=2;
const int ledPin=13;

int buttonState=0;

void setup() {
  // put your setup code here, to run once:
  pinMode(buttonPin,INPUT);
  pinMode(ledPin,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  buttonState=digitalRead(buttonPin);

  if(buttonState==HIGH)
  {
    digitalWrite(ledPin,HIGH);
  }else
  {
    digitalWrite(ledPin,LOW);
  }
}

3、效果

4、代码

csharp 复制代码
const int buttonPin=2;
const int ledPin=13;

int buttonState=0;
int ledState=0;

void setup() {
  // put your setup code here, to run once:
  pinMode(buttonPin,INPUT);
  pinMode(ledPin,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  
  while(digitalRead(buttonPin)==LOW){}

  if(ledState==0)
  {
    digitalWrite(ledPin,HIGH);
    ledState=1;
  }else
  {
    digitalWrite(ledPin,LOW);
    ledState=0;
  }

  delay(500);
}

5、总结

1、重新复习了下拉电阻的概念。

2、while(digitalRead(buttonPin)==LOW){}这句代码,Arduino系统内部是有中断器的,可以监听外部的输入

相关推荐
zlbcdn8 天前
Arduino学习-跑马灯
arduino·跑马灯
Dingyin HU16 天前
使用RUST在Arduino上进行编程(MacOS,mega板)
macos·rust·arduino
小_楠_天_问24 天前
第二课:ESP32 使用 PWM 渐变控制——实现模拟呼吸灯或音调变化
c语言·嵌入式硬件·mcu·esp32·arduino·pwm·esp32-s3
爱吃程序猿的喵1 个月前
基于VSCode+PlatformIO环境的ESP8266的HX1838红外模块
ide·vscode·编辑器·arduino·esp8266·红外线
SimonLiu0091 个月前
macOS Arduino IDE离线安装ESP8266支持包
macos·arduino·esp8266·离线·arduino ide
信奥洪老师1 个月前
2025-03 机器人等级考试三级理论真题 3级
算法·青少年编程·机器人·arduino
lishaoan771 个月前
快速安装Arduino IED的STM32 MCU开发包
stm32·单片机·嵌入式硬件·arduino·arduino ide·stm32 arduino
Dm_dotnet1 个月前
ESP32教程:通过WIFI控制LED灯的开关
arduino
mingupup2 个月前
ESP32+Arduino入门(三):连接WIFI获取当前时间
esp32·arduino