使用Arduino读取LM35温度传感器的值算出当前温度显示到LCD上:
关于控制LCD的显示前一篇文章中已经介绍了http://www.cnblogs.com/Zhang-Shangyu/p/5249206.html,这里介绍一下LM35温度传感器
LM35芯片实物图
下图来自http://www.arduino.cn/thread-1055-1-1.html
硬件连接:
LCD连接方式同前一篇文章http://www.cnblogs.com/Zhang-Shangyu/p/5249206.html
LM35的连接:VCC脚接5v,GND脚接面板包GND,Vout脚接Arduino模拟信号脚A0
操作中切勿将LM35的VCC脚和GND脚接反了,从芯片平坦的一面看去,最左边的脚是VCC,最右边的脚是GND。
软件代码:
#include<LiquidCrystal.h>
int tmp=0; //模拟脚A0
int data;
int celsius;
LiquidCrystal lcd(12,11,5,4,3,2); //LCD构造函数
void setup()
{
lcd.begin(16,2);
lcd.print("the temperature");
lcd.setCursor(3,1);
lcd.print("is");
}
void loop()
{
lcd.setCursor(6,1);
data = analogRead(tmp); //获取温度传感器的值
celsius=(125*data)>>8; //计算温度的公式
lcd.print(celsius);
lcd.print((char)223);
lcd.print("C");
delay(2000); //两秒后刷新
}
运行效果图:
看来是成功了,不过温度显示会有1-2度的跳跃变化.