不显示边框 使用table_Arduino LCD1602 显示时间、温度实验(不使用时钟模块)
时间: 2024-01-24 08:02:45 浏览: 85
您可以使用Arduino的内置函数millis()来获取当前时间,再结合温度传感器来实现显示时间和温度的功能。以下是示例代码:
```
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //初始化LCD引脚
int temperaturePin = A0; //连接温度传感器的引脚
int ledPin = 13; //连接LED的引脚
void setup() {
lcd.begin(16, 2); //设置LCD的列数和行数
pinMode(ledPin, OUTPUT); //设置LED引脚为输出模式
}
void loop() {
int temperatureValue = analogRead(temperaturePin); //读取温度传感器的值
float temperature = (5.0 * temperatureValue * 100.0) / 1024.0; //将传感器的值转换为摄氏度
unsigned long currentMillis = millis(); //获取当前时间
int seconds = (currentMillis / 1000) % 60; //计算当前时间的秒数
int minutes = (currentMillis / (1000 * 60)) % 60; //计算当前时间的分钟数
int hours = (currentMillis / (1000 * 60 * 60)) % 24; //计算当前时间的小时数
lcd.setCursor(0, 0); //设置LCD光标的位置为第一行第一列
lcd.print("Time: "); //打印时间的标签
if (hours < 10) {
lcd.print("0"); //如果小时数小于10,则在LCD上打印一个0
}
lcd.print(hours); //打印小时数
lcd.print(":");
if (minutes < 10) {
lcd.print("0"); //如果分钟数小于10,则在LCD上打印一个0
}
lcd.print(minutes); //打印分钟数
lcd.print(":");
if (seconds < 10) {
lcd.print("0"); //如果秒数小于10,则在LCD上打印一个0
}
lcd.print(seconds); //打印秒数
lcd.setCursor(0, 1); //设置LCD光标的位置为第二行第一列
lcd.print("Temp: "); //打印温度的标签
lcd.print(temperature); //打印温度值
digitalWrite(ledPin, HIGH); //点亮LED
delay(100); //等待100毫秒
digitalWrite(ledPin, LOW); //熄灭LED
delay(900); //等待900毫秒
}
```
此代码显示时间和温度,并使用LED进行周期性闪烁。您可以根据需要进行修改。请注意,该代码假定您已经连接了一个温度传感器和一个LED,并将它们连接到正确的引脚。
阅读全文