0、结果
说明:先来看看串口调试助手显示的结果,显示的是空气温度,如果是你想要的,可以接着往下看。
1、外观
说明:虽然LM35温度传感器形态各异,但是原理和代码都是适用的。
2、连线
说明:只需要连接四根线。
uno————LM35温度传感器 5V------------VCC GND------------GND 5V-----1K电阻-----OUT A0------------OUT
3、源程序
说明:采用非阻塞方式编写,一定时间检测一次温度,并将对应功能进行函数化,方便移植。
/****************************************lm35 part****************************************//*接线:5V------VCCGND------GND5V-----1K电阻-----OUTA0------OUT*/#define lm35Pin A0#define lm35TimeInterval 1000//检测一次的时间间隔 unsigned long lm35Times = 0; //记录设备运行时间float lm35Temperature = 0;long value = 0;/****************************************set up and loop part*********************************/void setup() {Serial.begin(9600); //设置串口波特率9600}void loop() {getLm34Data(); //获取温度数据}/****************************************lm35 part****************************************//*获取温度数据*/void getLm34Data() {if (millis() - lm35Times >= lm35TimeInterval) {//一定时间执行一次lm35Times = millis();value = analogRead(lm35Pin); //读取模拟输入lm35Temperature = (value * 5.0 / 1024 * 40); //0~5V对应模拟口读数1~1024,每10毫伏对应1℃Serial.print("Temper: ");//串口打印对应的值Serial.print(lm35Temperature); //串口打印对应的值Serial.println("(C)"); //串口打印对应的值}}
4、注意事项
说明:连线的时候,如果不在OUT引脚接一个上拉电阻,那么数据会拨动的很厉害,这个电阻不建议过大,不然就没那么精准。该传感器温度变化比较慢。
5、基本原理
LM35是一种基于集成电路的温度传感器,可以测量环境温度并将其转换为电压信号输出。在Arduino中使用LM35温度传感器时,您需要将传感器的引脚连接到Arduino的模拟输入引脚上,并使用一些代码将模拟输入值转换为实际温度值。
LM35传感器的工作原理基于温度对半导体材料电阻的影响。根据热电效应原理,当半导体材料受到热量的影响时,会产生一定的电势差。此外,材料的电阻值也会随着温度的变化而发生变化。LM35传感器利用这个原理来测量温度值。
LM35传感器的输出电压与温度成线性正比关系,公式为:Vout = 10mV/℃ × 温度值。例如,如果LM35传感器测量到的温度值为25℃,则输出电压为:Vout = 10mV/℃ × 25℃ = 0.25V。由此可见,通过测量LM35传感器输出的电压值,可以间接得知当前的温度值。