项目07 流水灯

项目07 流水灯#

1. 项目介绍:

在日常生活中,我们可以看到许多由不同颜色的led组成的广告牌。他们不断地改变灯光(像流水一样)来吸引顾客的注意。

在这个项目中,我们将使用ESP32控制10个leds实现流水的效果。

2. 项目元件:

Img

Img

Img

ESP32*1

面包板*1

红色LED*10

Img

Img

Img

220Ω电阻*10

跳线若干

USB 线*1

3. 项目接线图:

Img

4. 项目代码:

本项目是设计制作一个流水灯。这是这些行动:首先打开LED 1,然后关闭它。然后打开LED 2,然后关闭…并对所有10个LED重复同样的操作,直到最后一个LED关闭。这一过程反复进行,以实现流水的“运动”。

//**********************************************************************
/* 
 * 文件名 : 流水灯
 * 描述 : 用十个led来演示流动灯
*/
byte ledPins[] = {22, 21, 19, 18, 17, 16, 4, 0, 2, 15};
int ledCounts;

void setup() {
  ledCounts = sizeof(ledPins);
  for (int i = 0; i < ledCounts; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
}

void loop() {
  for (int i = 0; i < ledCounts; i++) {
    digitalWrite(ledPins[i], HIGH);
    delay(100);
    digitalWrite(ledPins[i], LOW);
  }
  for (int i = ledCounts - 1; i > -1; i--) {
    digitalWrite(ledPins[i], HIGH);
    delay(100);
    digitalWrite(ledPins[i], LOW);
  }
}
//**********************************************************************

ESP32主板通过USB线连接到计算机后开始上传代码。为了避免将代码上传至ESP32主板时出现错误,必须选择与计算机连接正确的控制板和端口(COM)。

点击 “工具” → “开发板”,可以查看到各种不同型号ESP32开发板,选择对应的ESP32开发板型号。

点击 “工具” → “端口”,选择对应的端口(COM)。

注意:将ESP32主板通过USB线连接到计算机后才能看到对应的端口(COM)

单击 Img 将代码上传到ESP32主控板。

注意: 如果上传代码不成功,可以再次点击 Img 后用手按住ESP32主板上的Boot键 Img,出现上传进度百分比数后再松开Boot键,如下图所示:

Img

5. 项目现象:

代码上传成功后,利用USB线上电后,你会看到的现象是:10个LED将从左到右点亮,然后从右到左返回。

Img