arduino连接lcd1602_1602显示摄氏度

2022-10-05 11:32:16 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

##Arduino uno 连接 LCD1602A显示18B20测试温度

面包板接线图

代码

代码语言:javascript复制
#include <LiquidCrystal.h> //引入依赖
#include <DS18B20.h>
DS18B20 ds(2); 
/* 初始化针脚 */
const int rs = 3;
const int en = 5;
const int d4 = 10;
const int d5 = 11; 
const int d6 = 12;
const int d7 = 13;
const int lcdlight = 9; //调节对比度
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
void setup() { 

pinMode(lcdlight,OUTPUT);
analogWrite(lcdlight, 130);//用于调节对比度(0-255)
lcd.begin(16, 2);//设置LCD要显示的列数、行数,即2行16列
}
void loop() { 

lcd.setCursor(0, 0); //设置光标定位到第0列,第1行(从0开始)
lcd.print("Temp:" String(ds.getTempC()) " C ");//打印从重置后的秒数
lcd.setCursor(0, 1); //设置光标定位到第0列,第2行(从0开始)
lcd.print(millis() / 1000);
}

引入库文件

需要导入包,建议使用1.8以上版本软件,流程是点击菜单: 项目->加载库->管理库,搜索LiquidCrystal,然后安装即可。

问题处理

1602显示屏一开始只显示16个格子,因为LCD第三个引脚没有电位器,把3号引脚,也就是V0引脚插A0-A5的PWM输出引脚,然后用设一个函数用于电脑串口输出模拟值,以达到调节电压对比度的问题。

最终效果

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

0 人点赞