二、ESP32 LED的闪烁

像往常一样,当我们开始探索一个新硬件时,要做的第一件事就是让LED闪烁。这会让我们兴奋不已,确实值得我们炫耀一番。

一.点亮LED

1.元器件清单

  • ESP32开发板
  • 一个LED(我这里的是5mm红色)
  • 一个电阻220欧姆
  • 面包板
  • 导线若干

在这里我顺便说一下LED的限流电阻应该怎样选取,设置的合适的阻值。我们可以从LED的数据手册上查到LED的有关参数,要计算LED的限流电阻,最重要的参数为:正向电压(VF)、正向电流(IF)和最大峰值电流(Peak Forward Current)。

LED的正向电流可以取峰值,但是LED要使工作电流小于极限值,所以可以根据以下公式计算:

限流电阻 = 电源电压 – LED 的正向电压 / LED的正向电流

当然在计算出限流电阻阻值后,不是所有的电阻阻值在市场上都可以买到,我们需要选取一个在市场上可以买到的电阻,就需要选取一个与计算阻值相近的电阻阻值,在选取阻值玩后要再重新计算一下,确保LED的正向电流和正向电压没有超出极限值。

一般来说:红绿LED的电压为1.8~2.4V,蓝白LED电压为2.8~4.2V;

3mmLED的额定电流为1~10mA;

5mmLED的额定电流为5~25mA;

10mmLED的额定电流为25~100mA;

2.电路连接

二、ESP32 LED的闪烁

3.LED闪烁代码

  1. int LED = 2;
  2. void setup()
  3. {
  4. pinMode(LED, OUTPUT);
  5. }
  6. void loop()
  7. {
  8. digitalWrite(LED, HIGH); // 打开LED
  9. delay(1000); //等待一秒
  10. digitalWrite(LED, LOW); // 关闭LED
  11. delay(1000); //等待一秒
  12. }

当看到以上的代码时,脑子会想到与ESP8266和Arduino完全相同的,是的arduino上的语法ESP32都兼容的。这让我们面对ESP32时省了不少的功夫。

接下来呢,就开始我们最经典的LED流水灯的制作。

二.流水灯的制作

1.元器件清单

  • ESP32开发板
  • 四个LED(我这里的是5mm红色)
  • 四个个电阻220欧姆
  • 一块面包板
  • 导线若干

2.电路连接

二、ESP32 LED的闪烁

3.LED流水灯代码

[scu name=”arduino-ide-post”]

  1. char LEDPins[] = {15, 4, 2, 5}; // 设定连接的引脚
  2. int i = 0;
  3. int L1 = 0;
  4. int len = 0;
  5. void setup()
  6. {
  7. len = sizeof(LEDPins) / sizeof(char); //求数组的长度
  8. for (i = 0; i < len; i++) { //用for循环设置引脚为输出模式
  9. pinMode(LEDPins[i], OUTPUT);
  10. digitalWrite(LEDPins[i], LOW);
  11. }
  12. }
  13. void loop()
  14. {
  15. digitalWrite(LEDPins[L1], HIGH);
  16. delay(100);
  17. digitalWrite(LEDPins[L1], LOW);
  18. delay(100);
  19. L1 = L1 + 1;
  20. if (L1 > len || L1 < 0) //判断是否到最后一个灯或最前面的灯
  21. L1 = 0; //LED灯从头开始
  22. }

以上的可以通过改变LEDPins[]数组里的GPIO引脚的个数,就可以改变流水灯的个数,就这样简易的流水灯就搞定了。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
ESP-32

ESP32 UART 硬串口重定义通信举例说明

2025-4-15 15:44:21

ESP-32

三、ESP32触摸式按键

2025-4-15 16:55:44

个人中心
购物车
优惠劵
今日签到
私信列表
搜索