仅当串行监视器未打开时 LED 才闪烁
LED blinking only when Serial Monitor is not open
我有一个非常简单的代码,它的行为与我期望的不同。
代码如下:
int i;
void setup() {
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop() {
//digitalWrite(13, HIGH);
i = random(1,5);
Serial.println(i);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
}
使用此代码,LED 仅在串行监视器打开时闪烁,在串行监视器关闭时保持打开状态。我遇到的另一个问题是,如果我注释掉当前的 digitalWrite(LED_BUILTIN, HIGH) 并将其替换为我注释掉的那个,那么即使串行监视器关闭,LED 也不会闪烁。
我有 Arduino Micro
如果要使 LED 闪烁,则需要在 LED 从关闭变为开启时添加一个额外的 delay
。
目前你有:
LED 亮起 -> 等待 -> LED 熄灭 ->(立即)LED 亮起 -> 等待等
所以你看到的只是 LED 持续亮着,为了让它工作,在 digitalWrite(13, HIGH)
之前添加另一个 delay(1000)
例如:
int i;
void setup() {
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop() {
//digitalWrite(13, HIGH);
i = random(1,5);
Serial.println(i);
delay(1000);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
}
我在我的 Arduino Nano 上测试了它,它运行良好。
我有一个非常简单的代码,它的行为与我期望的不同。
代码如下:
int i;
void setup() {
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop() {
//digitalWrite(13, HIGH);
i = random(1,5);
Serial.println(i);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
}
使用此代码,LED 仅在串行监视器打开时闪烁,在串行监视器关闭时保持打开状态。我遇到的另一个问题是,如果我注释掉当前的 digitalWrite(LED_BUILTIN, HIGH) 并将其替换为我注释掉的那个,那么即使串行监视器关闭,LED 也不会闪烁。
我有 Arduino Micro
如果要使 LED 闪烁,则需要在 LED 从关闭变为开启时添加一个额外的 delay
。
目前你有:
LED 亮起 -> 等待 -> LED 熄灭 ->(立即)LED 亮起 -> 等待等
所以你看到的只是 LED 持续亮着,为了让它工作,在 digitalWrite(13, HIGH)
之前添加另一个 delay(1000)
例如:
int i;
void setup() {
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop() {
//digitalWrite(13, HIGH);
i = random(1,5);
Serial.println(i);
delay(1000);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
}
我在我的 Arduino Nano 上测试了它,它运行良好。