我将我的RTC模块和LCD连接到我的Arduino。时间打印正确,但是当它是例如实时10:13:09,在液晶显示屏上打印出10:13:19。当它到达10:13:10它打印出来的很好。 例: 10点13分58秒
十点13分59秒
10点14分10秒
10:14:11 ......这是问题
10:14:19这是问题
10点14分10秒
10:14:11 ......等等。
我的代码(不知道我哪里出错了):
//time displayed on lcd
lcd.setCursor(4, 0);
lcd.print(now.hour(), DEC);
lcd.print(':');
lcd.print(now.minute(), DEC);
lcd.print(':');
if(Serial.print(now.second(), DEC) >= 10){
lcd.setCursor(10,0);
lcd.print(now.second(), DEC);
}
else if(Serial.print(now.second(), DEC) < 10){
lcd.setCursor(11,0);
lcd.print(now.second(), DEC);
lcd.setCursor(10,0);
lcd.print(" ");
}
有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
代码应该:
//time displayed on lcd
lcd.setCursor(4, 0);
lcd.print(now.hour(), DEC);
lcd.print(':');
lcd.print(now.minute(), DEC);
lcd.print(':');
if(now.second() >= 10){
lcd.setCursor(10,0);
lcd.print(now.second(), DEC);
}
else if(now.second() < 10){
lcd.setCursor(11,0);
lcd.print(now.second(), DEC);
lcd.setCursor(10,0);
lcd.print(" ");
}
删除if中的Serial.print Serial.print(now.second(),DEC)返回发送到串行端口的字节数。 https://www.arduino.cc/en/Serial/Print 这里没用。