我正在将LilyPad Temperature sensor连接到LilyPad Arduino 328 Main Board,目的是读取相当准确的环境温度读数 . 传感器正在接收电源并给出我能够通过串行读取的响应 .
我遇到的问题是从传感器读取给我非常不寻常的 - 虽然数字一致 . 我正在读模拟传感器输入并转换成这样的伏特......
loop(){
float therm;
therm = analogRead(2); // Read from sensor through Analog 2
therm *= (5.0/1024.0); // 5 volts / 1024 units of analog resolution
delay(100);
}
这产生了大约1.1伏的一致读数,当真实环境温度为大约23度时,传感器文献表明该环境温度约为60摄氏度 . 传感器并不靠近任何其他电子设备,所以我无法预见到问题所在 .
我的传感器读取代码是不正确的?我的传感器可能有问题吗?
3 回答
Lilypad不是3.3V arduino,这意味着它应该是
(3.3/1024.0)
,这将是0.726V,或22.6 C?试试这个 . 我有完全相同的问题 . 在这里阅读更多:http://www.ladyada.net/learn/sensors/tmp36.html
根据这个documentation,analogRead返回一个整数 . 您是否尝试将其投射到浮动状态,如下所示:
电压表上的传感器电压读数是多少?更改传感器温度时读数是否会改变? (握住它应该足以改变读数 . )