我尝试了arduino并编程了一些按钮与状态切换。如果它是“开”,那么它会变成“关”,反之亦然。Arduino Serial.println奇怪的错误
#include <Bounce.h>
const int buttonPin = 2;
const int ledPin = 6;
int ledState = HIGH;
int a = LOW;
int b = LOW;
Bounce push1 = Bounce(buttonPin,5);
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
push1.update ();
int x = digitalRead(push1.read());
if (x != b) {
if (x == HIGH) {
if (a == HIGH) {
a = LOW;
}
else {
a = HIGH;
}
}
else {
}
}
digitalWrite(ledPin, a);
Serial.println(a); // Weird thing
b = x;
}
它运行良好,但奇怪的是,当我编程时,我添加了一些串行打印来监视通过COM输出。然后,它一切运作良好,我想消除Serial.println(a);
,但它不工作,然后!
循环不响应我的按钮。 我错过了什么吗?什么会导致这种事情? 也许我错过了什么,所以新鲜的眼睛会很好:)
非常感谢!
我怀疑'Serial.println'是一个延迟。尝试用'delay'替换'Serial.println',例如'延迟(100);'。 – mttrb