Menu
CoddyTech

你的第一个 NeoPixel

本课属于 Coddy Arduino 学习旅程的“显示器与传感器”单元。第 12 课,共 24 课。

NeoPixel 是一种内部带有微型芯片的 RGB LED。它只有一根数据线,而不是三根颜色引脚:开发板会以一连串脉冲的形式发送颜色,像素会一直保持该颜色,直到收到新颜色。

Adafruit_NeoPixel 库会发送这些脉冲。创建一个对象,并指定像素数量、数据引脚和像素类型(NEO_GRB + NEO_KHZ800 表示这些像素的颜色顺序和速度):

#include <Adafruit_NeoPixel.h>

Adafruit_NeoPixel pixel(1, 6, NEO_GRB + NEO_KHZ800);

在 setup() 中,pixel.begin() 会准备好数据引脚。然后通过像素编号(从 0 开始计数)以及红、绿、蓝的值来设置像素颜色,每个值的范围都是 0 到 255:

pixel.setPixelColor(0, 255, 0, 0);   // 像素 0:全红
pixel.show();                        // 发送出去

setPixelColor() 只会把颜色存储在开发板的内存中。只有 show() 发送颜色后,像素才会发生变化。

challenge icon

挑战

简单

一个 NeoPixel 连接在引脚 6 上。在 setup() 中:

  • 使用 pixel.begin() 启动它
  • 将像素 0 设为绿色
  • 使用 pixel.show() 发送颜色

按“运行”,然后按“检查”。

亲手试试

#include <Adafruit_NeoPixel.h>

// 1 个像素,数据引脚为 6
Adafruit_NeoPixel pixel(1, 6, NEO_GRB + NEO_KHZ800);

void setup() {
  // 启动像素,然后将它设为绿色
}

void loop() {
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

显示器与传感器中的所有课

自己练习: Arduino 在线编辑器