控制一個串了 60 顆 WS2812 的 RGB 彩色燈條,發出紅/綠/藍的呼吸燈效果
此為 LinkIt 7697 BlocklyDuino v3 新功能, 預計於七月初發佈
此積木適用於 WS2812 和 SK6812 的 三色 LED 光條。此類光條最有名的就是 Adafruit 出 NeoPixel 系列,也是本積木底層採用的驅動程式庫
電路圖
LinkIt 7697
WS2812 彩色燈條
麵包板
杜邦線
WS2812 可以多棵一直串接下去,LinkIt 7697 透過 1-wire (一根 GPIO) 的方式和一串的 WS2812 溝通。每顆 WS2812 拿走收到的第一筆訊號後,把後面的訊號原封不動地傳給一下個 WS2812
下面範例連接方式
5V :接 5V 電源供應
GND : 接 GND
DIN : 接 P2
WS2812 的亮度非常亮,為避免傷害眼睛,建議先用 Default 亮度 30,再依需求慢慢調亮
積木畫布
產生的 Arduino 程式如下
#include <Adafruit_NeoPixel.h>
int i;
int color;
int add;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(60,2,NEO_GRB + NEO_KHZ800);
void setup()
{
pixels.begin();
pixels.setBrightness(30);
color = 0;
add = 1;
Serial.begin(9600);
}
void loop()
{
for (i = 0; i <= 19; i++) {
pixels.setPixelColor(i, pixels.Color(color,0,0));
}
for (i = 20; i <= 39; i++) {
pixels.setPixelColor(i, pixels.Color(0,color,0));
}
for (i = 40; i <= 59; i++) {
pixels.setPixelColor(i, pixels.Color(0,0,color));
}
pixels.show();
color = color + add;
if (color >= 255) {
add = -1;
} else if (color <= 0) {
add = 1;
}
Serial.println(color);
delay(10);
}
RGB LED 燈條輸出效果,1~20 顆顯示紅色呼吸燈,21~40 顆顯示綠色呼吸燈,41~60 顆顯示藍色呼吸燈
此為 LinkIt 7697 BlocklyDuino v3 新功能, 預計於七月初發佈
此積木適用於 WS2812 和 SK6812 的 三色 LED 光條。此類光條最有名的就是 Adafruit 出 NeoPixel 系列,也是本積木底層採用的驅動程式庫
電路圖
LinkIt 7697
WS2812 彩色燈條
麵包板
杜邦線
WS2812 可以多棵一直串接下去,LinkIt 7697 透過 1-wire (一根 GPIO) 的方式和一串的 WS2812 溝通。每顆 WS2812 拿走收到的第一筆訊號後,把後面的訊號原封不動地傳給一下個 WS2812
下面範例連接方式
5V :接 5V 電源供應
GND : 接 GND
DIN : 接 P2
WS2812 的亮度非常亮,為避免傷害眼睛,建議先用 Default 亮度 30,再依需求慢慢調亮
積木畫布
產生的 Arduino 程式如下
#include <Adafruit_NeoPixel.h>
int i;
int color;
int add;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(60,2,NEO_GRB + NEO_KHZ800);
void setup()
{
pixels.begin();
pixels.setBrightness(30);
color = 0;
add = 1;
Serial.begin(9600);
}
void loop()
{
for (i = 0; i <= 19; i++) {
pixels.setPixelColor(i, pixels.Color(color,0,0));
}
for (i = 20; i <= 39; i++) {
pixels.setPixelColor(i, pixels.Color(0,color,0));
}
for (i = 40; i <= 59; i++) {
pixels.setPixelColor(i, pixels.Color(0,0,color));
}
pixels.show();
color = color + add;
if (color >= 255) {
add = -1;
} else if (color <= 0) {
add = 1;
}
Serial.println(color);
delay(10);
}
RGB LED 燈條輸出效果,1~20 顆顯示紅色呼吸燈,21~40 顆顯示綠色呼吸燈,41~60 顆顯示藍色呼吸燈