基于arduino的温度计

使用器件:arduino uno,LM35模块,LCD602模块,10k电位器,面包板,杜邦线

线路连接
LCD1602模块连接

VSS(电源地)GND
VDD(电源正极)5v
V0(显示对比度调整)电位器
RS(数据/命令选择)11
RW (读/写选择)12
E(使能信号)10
D4(数据)5
D5(数据)4
D6 (数据)3
D7 (数据)2
A (背光源正极)5v
K(背光源负极)GND

LM35模块连接

正极5v
输出A0
负极GND

LM35的输出连接上arduino的模拟引脚,Arduino的模拟引脚连接到一个了10位A/D转换,输入0–5V的电压对应读0–1023的数值,每个读到的数值对应的都是一个电压值。这里读到的是温度的电压值,以0~1023的方式输出,而LM35温度传感器每10mV对应1摄氏度。计算温度式子为:
data = (double) val *(5/10.24);
代码部分

#include <LiquidCrystal.h>  //调用头文件
#include <SoftwareSerial.h>//软串口通信

LiquidCrystal lcd(11,12,10,5,4,3,2);    //连接引脚LiquidCrystal(rs,rw,en,d4,d5,d6,d7);

void setup() {                                           
  lcd.begin(16,2);
  lcd.clear();
}

void GetTemperatures(){
    int val;            //用于存储LM35读到的值
    double data;        //用于存储已转换的温度值
    val=analogRead(0);   //LM35连到模拟口,并从模拟口A0读值(输入0~5V的电压对应读到0~1023的数值)
    data = (double) val *(5/10.24);  // 得到电压值,通过公式换成温度
    lcd.setCursor(9, 1) ;    
    lcd.print(data);         // 串口输出温度值
    lcd.setCursor(14, 1);  
    lcd.print((char)223); //显示o符号
    lcd.setCursor(15, 1);  
    lcd.print("C"); //显示字母C    
}

void loop() {
  lcd.setCursor(2, 0);
  lcd.print("hello world");
  lcd.setCursor(0, 1); 
  lcd.print("Sec: ");
  lcd.print(millis() / 1000);
  GetTemperatures();     //获取LM135温度
  delay(1000);
  lcd.clear();
}

在这里插入图片描述
参考:Arduino基础入门篇32—LCD1602驱动库的使用

  • 2
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值