我目前正在尝试读取输入并将它们存储为整数,但是我很难让它们按顺序显示。
我希望代码会依次显示,但是一旦我在串行监视器中输入一个值,它就会显示所有文本。
我相信它与serial.println的定位有关
这是代码:
Serial.println("please input a swim hour");
while (!Serial.available()) {
//wait for a the user to enter a value
;
int swimhours=Serial.parseInt();
}
我需要再打印 8 次。我如何将其变成一个函数?这样,一旦我输入一个值,就会出现下一行文本,即“请输入游泳分钟”,然后存储它。
我需要文本位于所有这些整数上:
int swimmins;
int swimsecs;
int swimhours;
int bikehours;
int bikemins;
int bikesecs;
int runhours;
int runmins;
int runsecs;
读取输入在里面
while (!Serial.available()) { … }
。此外,int swimhours
仅在该块内的范围内。
看起来你试图为
while
循环设置一个空的主体,这将是:
while (!Serial.available())
;
(没有
{
,因此空语句是唯一的主体。)
至于如何将其转换为函数:一般而言,假装您已经拥有该函数并在代码中编写调用可能会有所帮助。然后,当您知道希望该函数如何工作时,创建它,例如:
int swimhours = intFromSerialWithPrompt("please input swim hours");