流水灯代码
// 定义连接LED的引脚
const int led1 =1;
const int led2 = 2;
const int led3 = 3;
const int led4 = 4;
const int led5 = 5;
void setup() {
// 初始化所有引脚为输出模式
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
}
void loop() {
// 依次点亮所有LED
digitalWrite(led1, HIGH);
delay(500); // 等待500毫秒
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
delay(500);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
delay(500);
digitalWrite(led5, LOW);
}
for循环简化代码
// 定义连接LED的引脚
void setup() {
// 初始化所有引脚为输出模式
for(int i=1;i<=5;i++){
pinMode(i,OUTPUT);
}
}
void loop() {
// 依次点亮所有LED
for(int i=1;i<=5;i++){
digitalWrite(i,HIGH);
delay(500);
digitalWrite(i,LOW);
}
}
呼吸灯代码
const int redPin = 9; // 红色LED连接的PWM引脚
const int greenPin = 10; // 绿色LED连接的PWM引脚
const int bluePin = 11; // 蓝色LED连接的PWM引脚
int brightness = 0; // 初始亮度
int fadeAmount = 5; // 每次亮度变化的量
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop() {
// 逐渐增加亮度
for (brightness = 0; brightness <= 255; brightness += fadeAmount) {
analogWrite(redPin, brightness);
analogWrite(greenPin, brightness);
analogWrite(bluePin, brightness);
delay(30);
}
// 逐渐减少亮度
for (brightness = 255; brightness >= 0; brightness -= fadeAmount) {
analogWrite(redPin, brightness);
analogWrite(greenPin, brightness);
analogWrite(bluePin, brightness);
delay(30);
}
}
火焰灯代码
// 定义连接到RGB LED的PWM引脚
const int redPin = 9;
const int greenPin = 10;
const int bluePin = 11;
void setup() {
// 设置引脚为输出模式
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop() {
// 模拟火焰的随机闪烁
int flicker = random(0, 150); // 产生0到150之间的随机数
int red = 255 - flicker; // 红色亮度
int orange = flicker;
int blue=flicker; // 橙色亮度
// 设置RGB LED的颜色和亮度
analogWrite(redPin, red);
analogWrite(greenPin, orange ); // 绿色亮度较低
analogWrite(bluePin, blue); // 蓝色亮度为0
// 等待一段时间,以模拟火焰的动态效果
delay(random(50, 150));
}