4位Led灯的使用,使4个灯一起亮,但每个灯亮不同的颜色,每隔两秒颜色变化一次,串口监视器显示当前灯的颜色代码该怎么写
时间: 2023-06-02 21:04:55 浏览: 230
单片机 4只LED数码管轮流显示4组数据 每隔2秒变化一组
5星 · 资源好评率100%
对于这个问题,我可以给出以下代码:
```
int ledPins[] = {9, 10, 11, 12}; // 设置4个LED控制引脚的数组
int colors[] = {0xFF0000,0x00FF00,0x0000FF,0xFFFF00}; // 设置4种颜色的数组
void setup() {
for(int i = 0; i < 4; i++) {
pinMode(ledPins[i], OUTPUT); // 配置LED控制引脚为输出
}
Serial.begin(9600); // 初始化串口通信,波特率设置为9600
}
void loop() {
for(int i = 0; i < 4; i++) {
analogWrite(ledPins[i], colors[i]); // 设置LED的颜色
}
delay(2000); // 等待2秒
for(int i = 0; i < 4; i++) {
analogWrite(ledPins[i], 0); // 关闭LED
}
delay(1000); // 等待1秒
}
```
这段代码实现了4位LED灯不同颜色的循环显示,每个灯亮不同的颜色,每隔2秒颜色变化一次。使用一个int型数组来存储LED控制引脚和颜色,循环控制LED的颜色变化和延时时间。在每次颜色变化后,关闭LED灯,等待1秒后进入下一轮循环。
注意:此代码仅提供参考,实际使用时需要根据硬件环境进行适当的修改。
阅读全文