// 定义三个LED引脚
int ledPin1 = 9;
int ledPin2 = 10;
int ledPin3 = 11;
void setup() {
// 初始化串口通信
Serial.begin(9600);
// 设置LED引脚为输出模式
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
}
void loop() {
// 控制第一个LED灯
breathe(ledPin1);
// 控制第二个LED灯
breathe(ledPin2);
// 控制第三个LED灯
breathe(ledPin3);
}
// 控制LED灯呼吸函数
void breathe(int ledPin) {
int brightness = 0; // 亮度
int fadeAmount = 5; // 呼吸速度,值越小呼吸越慢
// 逐渐变亮
while (brightness < 255) {
brightness += fadeAmount;
analogWrite(ledPin, brightness);
delay(30); // 延时一段时间
}
// 逐渐变暗
while (brightness > 0) {
brightness -= fadeAmount;
analogWrite(ledPin, brightness);
delay(30); // 延时一段时间
}
}