遵循Arduino代码的目的是从用户那里获取字符。 当前连续打印提示的问题。 我希望它只打印一次提示,然后等待输入。 谢谢。
char kbChar;
void setup() {Serial.begin(9600);}
void loop() {inChar();}
void inChar(){
Serial.println("Type something!");
if(Serial.available()){
kbChar = Serial.read();
Serial.println(kbChar);
}
}
请注意有关Arduino 草图中setup()
和loop()
函数的以下属性:
setup()
在一开始就被调用一次loop()
在setup()
完成后被反复调用,永远。
因此,您将继续打印提示,因为您的提示调用Serial.println("Type something!");
位于inChar()
内部,该 在loop()
函数体中调用。若要仅使提示输出一次,请将其放入setup()
函数体中。
char kbChar;
void setup() {
Serial.begin(9600);
while (!Serial) ; // Wait for Serial port to open.
Serial.println("Type something!");
}
void loop() {
inChar();
}
void inChar(){
if(Serial.available()){
kbChar = Serial.read();
Serial.println(kbChar);
}
}