arduino流水灯程序代码
作者:野牛程序员:2023-07-04 17:00:02Arduino阅读 3325
以下是一个基本的Arduino流水灯程序代码示例:
// 定义引脚
int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9};
int numLeds = sizeof(ledPins) / sizeof(ledPins[0]);
// 设置初始延迟时间和速度
int delayTime = 100;
int speed = 1;
void setup() {
// 配置引脚为输出模式
for (int i = 0; i < numLeds; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// 依次点亮LED
for (int i = 0; i < numLeds; i++) {
digitalWrite(ledPins[i], HIGH);
delay(delayTime);
digitalWrite(ledPins[i], LOW);
}
// 依次熄灭LED
for (int i = numLeds - 1; i >= 0; i--) {
digitalWrite(ledPins[i], HIGH);
delay(delayTime);
digitalWrite(ledPins[i], LOW);
}
// 根据速度调整延迟时间
delayTime /= speed;
// 改变方向
if (delayTime <= 10 || delayTime >= 1000) {
speed = -speed;
}
}这段代码使用了一个整型数组 ledPins 来存储每个LED所连接的引脚。在 setup() 函数中,通过 pinMode() 将这些引脚配置为输出模式。
在 loop() 函数中,通过两个 for 循环实现流水灯的效果。第一个循环逐个点亮LED,第二个循环逐个熄灭LED。通过 digitalWrite() 将引脚设置为 HIGH 或 LOW 来控制LED的亮灭。
delay() 函数用于设置每个LED点亮和熄灭的延迟时间。随着程序的执行,延迟时间会不断变化,从而改变流水灯的速度。
最后,通过检查延迟时间的范围,程序可以改变流水灯的方向。如果延迟时间小于等于 10 或大于等于 1000,速度将取反,即改变流水灯的方向。
你可以根据需要调整延迟时间和速度来改变流水灯的效果。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:如何使用Arduino连接蜂鸣器
- 下一篇:arduino呼吸灯程序
