【发布时间】:2021-08-10 02:00:48
【问题描述】:
int led1 = 3;
int led2 = 5;
int led3 = 6;
int led4 = 9;
int m = 1;
int brightness = 10;
int fadeAmount = 5;
int led;
int one = 1;
void setup()
{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
}
void loop()
{
if (m == 4 or m == 1) {
one = -one;
}
if (intensite <= 5){
m = m + one;
}
if (m == 1) {
led = led1;
}
if (m == 2) {
led = led2;
}
if (m == 3) {
led = led3;
}
if (m == 4) {
led = led4;
}
brightness = brightness + fadeAmount;
if (brightness <= 5 or brightness >= 255) {
fadeAmount = -fadeAmount;
}
analogWrite(led,brightness);
delay(10);
}
当我运行这部分代码时,它只是卡在了顶部 LED 的无限循环中,并且没有按照我看不到的方式返回。如果有人能帮助我理解我的错误,那将是非常有帮助的。目的是编写一个代码,从右到左(led1 到 led4)然后从左到右(led4 到 led1)点亮 LED,而不是简单地打开它们,而是让它们褪色。
【问题讨论】:
-
请提供更多细节。您提供的信息还不够,您将变量命名为非常糟糕,甚至没有解释您的代码或预期的行为......
-
对不起变量我是法国人所以对我来说它们很简单,我会翻译它们
-
@loloToster 我希望修改后更容易理解