极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 迷你强

Arduino入门教程--第十课--用Arduino做简单温度计

  [复制链接]
发表于 2013-6-10 16:51:07 | 显示全部楼层
我觉得应该是float vol = n * ((5.0 / 1024.0)/0.01); 结果是一样的
5.0/1024得到输入端口电压的识别率,再比上LM35的电压识别率,再乘以输入端口的值更直观一些
回复 支持 反对

使用道具 举报

发表于 2013-6-11 01:47:09 | 显示全部楼层
简单温度计的不简单讨论哈,学习氛围很浓厚
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-13 12:04:15 | 显示全部楼层
大家往后看,后面的就准了。。这个是简单玩法、、、、
回复 支持 反对

使用道具 举报

发表于 2013-6-26 15:16:57 | 显示全部楼层
强子老是让大家复制代码,靠复制代码能学会编程吗,还是亲手打一遍好一些,个人建议
回复 支持 反对

使用道具 举报

发表于 2013-7-25 00:24:27 | 显示全部楼层
前面的讨论里有些错误,应该不是0-100℃对应0-5v(或者就是对应模拟口0-1024),如果是这样的话,那么模拟口每个数对应的温度是 100/1024,所以假设n是从模拟口读到的数字,那么它对应的温度就是n * 100 / 1024.  所以说实际上应该说是0-500℃对应0-5v(模拟口0-1024),但是这个设备最多只能检测100度的温度,其实从模拟口读出来的数应该永远小于1024/5
回复 支持 反对

使用道具 举报

发表于 2013-8-3 09:43:48 来自手机 | 显示全部楼层
我使用的红外测温探头,输出的是电流信号,转为电压信号就可以实时测温了!
回复 支持 反对

使用道具 举报

发表于 2013-8-9 23:15:04 | 显示全部楼层
上面的讨论看得我云山雾罩的。总之我用电位器测过板子的电压变化值是0~4.88V,所以用 5.0/1023.0*100 这个式子妥妥的,测出的温度比较准确。

开空调室内温度大概是26度,比空调遥控器上的温度高2度,这个觉得很正常。用手指捏住LM35,大概能均匀升到32度,放开后缓缓回落,变化很均匀。

那么,是我人品好么,哇哈哈哈哈。
回复 支持 反对

使用道具 举报

发表于 2013-8-16 11:51:14 | 显示全部楼层
想请教一下,在这个语句float vol = n * (5.0 / 1023.0*100);  中 “5.0 / 1023.0*100”是什么意思? 看不懂。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-17 10:17:43 | 显示全部楼层
Greek 发表于 2013-8-16 11:51
想请教一下,在这个语句float vol = n * (5.0 / 1023.0*100);  中 “5.0 / 1023.0*100”是什么意思? 看不懂 ...

10位 adc是1024级     datasheet 上说 lm35   10mv/℃
回复 支持 反对

使用道具 举报

发表于 2013-8-18 23:03:11 | 显示全部楼层
迷你强 发表于 2013-8-17 10:17
10位 adc是1024级     datasheet 上说 lm35   10mv/℃

为什么不用所测量电压直接除以0.01V呢?
回复 支持 反对

使用道具 举报

发表于 2013-9-26 18:37:46 | 显示全部楼层
很好,赞一个!其实我也同意应该自己手打程序,不要直接复制教程程序对加深印象有帮助,另外,看完教程看留言也是收获很多!
回复 支持 反对

使用道具 举报

发表于 2013-12-6 21:47:34 | 显示全部楼层
float vol = n * (5.0 / 1023.0*100)????是这样的么》?
回复 支持 反对

使用道具 举报

发表于 2013-12-6 21:49:56 | 显示全部楼层
float vol = n * (100.00 / 1023.0),这样更合理
回复 支持 反对

使用道具 举报

发表于 2013-12-27 19:54:26 | 显示全部楼层
呵呵,我看了一下lm35的资料

说是每升1度就上升10mv,应该怎么理解  5/1023*100  这里面呢?
本来还理解,但是越想越糊涂了...

还在  sd18b20 数字信号,怎么和arduino通信,能详细解说一下吗?呵呵,网上找到有程序是用库的或者和是单片机的,类似汇编的,有很多看不懂,特别是有什么时序的...
回复 支持 反对

使用道具 举报

发表于 2014-2-17 23:49:56 | 显示全部楼层
laofuz1024 发表于 2013-12-27 19:54
呵呵,我看了一下lm35的资料

说是每升1度就上升10mv,应该怎么理解  5/1023*100  这里面呢?

因为模拟口输出的数值是0-1023,板子的基准电压是5V,所以5/1023*1000就可以算出模拟口的数值1=4.88759mV,又因为LM35测出温度是以电压输出的形式来表现的,每升1度就上升10mV,所以完整公式就是:vol=n*5.0/1023.0*1000/10,理解了吧?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-20 05:01 , Processed in 0.056741 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表