使用arduino写一个收到串口数据“1”时电机旋转ws2812b灯带长亮绿色 10秒后熄灭电机停止旋转 收到串口数据“2”时ws2812b灯带红色闪烁 10秒后熄灭
时间: 2023-04-11 08:01:02 浏览: 105
基于阿里云、小程序、Arduino的WS2812灯控系统.zip
5星 · 资源好评率100%
好的,这个问题我可以回答。您可以使用以下代码实现:
#include <Adafruit_NeoPixel.h>
#define PIN 6
#define NUMPIXELS 60
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
Serial.begin(9600);
pixels.begin();
}
void loop() {
if (Serial.available() > 0) {
int data = Serial.read();
if (data == '1') {
digitalWrite(9, HIGH);
pixels.fill(pixels.Color(0, 255, 0), 0, NUMPIXELS);
pixels.show();
delay(10000);
digitalWrite(9, LOW);
pixels.clear();
pixels.show();
} else if (data == '2') {
digitalWrite(9, HIGH);
for (int i = 0; i < 10; i++) {
pixels.fill(pixels.Color(255, 0, 0), 0, NUMPIXELS);
pixels.show();
delay(500);
pixels.clear();
pixels.show();
delay(500);
}
digitalWrite(9, LOW);
pixels.clear();
pixels.show();
}
}
}
请注意,这只是一个简单的示例代码,您需要根据您的具体需求进行修改和优化。
阅读全文