Arduino LED控制:按键控制LED亮灭与闪烁

本教程将带你学习如何使用Arduino控制LED灯,实现通过按键控制LED亮灭和闪烁的功能。

所需材料:

  • Arduino开发板
  • USB数据线
  • 面包板
  • LED灯*2
  • 220Ω电阻*2
  • 按键开关
  • 连接线

电路连接:

  1. 将LED灯的正极(长脚)分别连接到Arduino数字引脚PA1和PA2,负极(短脚)分别连接到220Ω电阻。
  2. 将两个电阻的另一端都连接到Arduino的GND引脚。
  3. 将按键开关的一端连接到Arduino的数字引脚PA0,另一端连接到Arduino的5V引脚。

代码:

void setup() {
  // 将PA1和PA2设置为输出模式
  DDRA |= (1 << PA1) | (1 << PA2);
  // 将PA0设置为输入模式
  DDRA &= ~(1 << PA0);
}

void loop() {
  // 读取PA0的电平状态
  if (PINA & (1 << PA0)) {
    // 如果PA0为高电平,点亮PA1连接的LED
    PORTA |= (1 << PA1);
  } else {
    // 如果PA0为低电平,闪烁PA2连接的LED
    PORTA |= (1 << PA2);
    delay(1000);
    PORTA &= ~(1 << PA2);
    delay(1000);
  }
}

代码解析:

  1. DDRA |= (1 << PA1) | (1 << PA2);:将PA1和PA2设置为输出模式,用于控制LED灯的亮灭。
  2. DDRA &= ~(1 << PA0);:将PA0设置为输入模式,用于读取按键状态。
  3. if (PINA & (1 << PA0)):判断PA0是否为高电平,即按键是否被按下。
  4. PORTA |= (1 << PA1);:将PA1设置为高电平,点亮PA1连接的LED灯。
  5. PORTA |= (1 << PA2);:将PA2设置为高电平,点亮PA2连接的LED灯。
  6. delay(1000);:延时1秒。
  7. PORTA &= ~(1 << PA2);:将PA2设置为低电平,熄灭PA2连接的LED灯。

最终状态:

  • 当按下按键时,PA1连接的LED灯常亮。
  • 当松开按键时,PA2连接的LED灯以1秒的频率闪烁。

通过本教程,你学习了如何使用Arduino控制LED灯,并实现了按键控制LED亮灭和闪烁的功能。你可以根据自己的需要修改代码,实现更多有趣的LED控制效果。

Arduino LED控制:按键控制LED亮灭与闪烁

原文地址: https://www.cveoy.top/t/topic/jpzX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录