材料:
Arduino uno
I2CLCD1602模块‘
Lcd1602
- // 声明集成了I2C接口的LCD1602编程所需库文件
- #include <Wire.h>
- #include <LiquidCrystal_I2C.h>
- LiquidCrystal_I2C lcd(0x27,16,2);
- int potPin = A0; //设置模拟口A0为LM35的信号输入端口
- float temperature = 0; //设置temperature为浮点变量
- long val=0; //设置val为长整数变量
- //初始化程序
- void setup() {
- //LCD的I2C通讯初始化需要执行两次
- lcd.init(); // 给LCD的I2C通讯初始化
- delay(20);
- lcd.init(); // 给LCD的I2C通讯初始化
- delay(20);
- lcd.backlight();//点亮LCD背光灯
-
- }
- //主程序
- void loop()
- {
- val=analogRead(potPin);//温度传感器LM35接到模拟PIN4上;val变量为从LM35信号口读取到的数值
- temperature = (val*0.0048828125*100); //把读取到的val转换为温度数值,系数一:0.00488125=5/1024,0~5V对应模拟口读数1~1024,系数二:100=1000/10,1000是毫伏与伏的转换;10是每10毫伏对应一度温升。
- lcd.clear();//LCD清屏
- // 定位光标在LCD第0行、第0列
- lcd.setCursor(0, 0);
- lcd.print("LM35:");
- // 定位光标在LCD第2行、第8列
- lcd.setCursor(7, 1);
- {
- lcd.print(temperature);
- lcd.print("c");
- }
- delay(500);//延时500ms
- }
复制代码 |