在 LCD 上实时显示数字
本课属于 Coddy Arduino 学习旅程的“显示器与传感器”单元。第 8 课,共 24 课。
lcd.print() 也能输出数字,变量或计算结果也可以像文本一样输出:
lcd.print(millis() / 1000); // 开发板启动后经过的秒数要让数字保持最新状态,请在 loop() 中再次输出它。不过,每次输出都会让光标向后移动,因此第二次输出会接在第一次后面:0,然后是 00,再然后是 000。每次输出前,都用 lcd.setCursor() 把光标移回去,这样新数字就会覆盖旧数字。
void loop() {
lcd.setCursor(0, 1);
lcd.print(millis() / 1000);
delay(200);
}较短的 delay() 可以避免屏幕每秒重绘数千次,而数字每秒才变化一次。
挑战
简单顶行显示 Seconds:。在它下面显示开发板已运行的秒数:
- 在
loop()中,将光标移到最底行的开头 - 打印
millis() / 1000 - 等待 200 ms
按“运行”,观察计数,然后按“检查”。
亲手试试
#include <LiquidCrystal.h>
// RS, E, D4, D5, D6, D7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
lcd.print("Seconds:");
}
void loop() {
// 在底行显示开发板启动后经过的秒数
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
显示器与传感器中的所有课
自己练习: Arduino 在线编辑器