马上注册(开思网用户可以直接登录),结交更多创客好友,享用更多功能,让你轻松玩转创客社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
说了那么多analogRead来测电压好像没什么用丫~其实是很有用的,很多传感器都是通过测出当前电压表示当前的环境量。
例如今天实验用到的温度传感器LM35,它从零度开始通过感受到温度每升高1度,电压就升高10mV。例如现在是20度,那么电压就是20x10mV=200mV。现在analogRead若读回的电压数是200mV(200mA=0.2V),200mV/10=20度。我们明白了原理就很容易做出温度计出来了。
现在看下如何接线
让温度传感器上面的字“LM35”面向自己,然后从左到右引脚分别是vcc,Vout(接A0),gnd。然后再看下我们的程序: [mw_shl_code=cpp,true]void setup()
{
Serial.begin(9600);
}
void loop()
{
int val = analogRead(A0);
float temp = ((val * 5.0) / 1024.0) * 100;//((val*5.0)/1024.0)*1000/10
Serial.println(temp);
delay(1000);
}[/mw_shl_code]
打开串口窗口,可以看到现在我的环境温度了~温度是在浮动的,因为电压也是在浮动的,这个跟很多因素有关,所以我们如果想让更准确的温度,最简单就是求平均数就好了!好了温度传感器的实验搞定了~
|