pdf-icon

Arduino 上手教程

2. 设备开发 & 案例程序

5. 拓展模块

6. 应用案例

Atom-Lite/Atom-Matrix RGB LED

Atom-Lite/Atom-Matrix RGB LED 相关 API 与案例程序。

案例程序

编译要求

  • M5Stack 板管理版本 >= 3.2.6
  • 开发板选项 = M5Atom
  • M5Unified 库版本 >= 0.2.8
  • M5GFX 库版本 >= 0.2.11
  • Adafruit NeoPixel 库版本 >= 1.15.1
cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
#include <M5Unified.h>
#include <Adafruit_NeoPixel.h>

#define LED_PIN 27
#define NUM_LEDS 25

Adafruit_NeoPixel strip(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
    M5.begin();
    Serial.begin(115200);
    Serial.printf("RGB LED Test\n");
    strip.begin();
}

void loop() {
    // Red
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(255, 0, 0)); }
    strip.show();
    delay(500);

    // Green
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(0, 255, 0)); }
    strip.show();
    delay(500);

    // Blue
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(0, 0, 255)); }
    strip.show();
    delay(500);

    // Yellow
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(255, 255, 0)); }
    strip.show();
    delay(500);

    // Magenta
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(255, 0, 255)); }
    strip.show();
    delay(500);

    // Cyan
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(0, 255, 255)); }
    strip.show();
    delay(500);

    // White (all on)
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(255, 255, 255)); }
    strip.show();
    delay(500);

    // Black (all off)
    for (char i = 0; i <= NUM_LEDS; i++) { strip.setPixelColor(i, strip.Color(0, 0, 0)); }
    strip.show();
    delay(500);
}

API

Atom-Lite/Atom-Matrix RGB LED 部分使用了Adafruit NeoPixel库,更多相关的 API 可以参考下方文档:

On This Page