【讨论、请教】利用DS18B20完成数码管显示的温度测量小电路

[复制链接]
4661|9
 楼主| BITiramisu 发表于 2008-11-25 18:05 | 显示全部楼层 |阅读模式
首先自我介绍一下:专业是机械电子,但是兴趣偏电子;社团里面有这样的“项目”(理论上说算不上是项目哈,只不过是兴趣制作而已),但是还没有人做--想想自己有点时间,又有点兴趣,故决定做做~<br /><br />接着讲讲自己对DS18B20的理解:<br />1,有一定的测量范围(-55°C-125°C);<br />2,精度(增量值)为0.5°C;<br />3,可用数据线供电;<br />4,单线接口,只需要一个接口引脚即可通信;<br />5,以九位数字值方式读出温度,例如:<br />MSB(最高有效位)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(最低有效位)LSB&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;------------------------------<br />|&nbsp;1&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;1&nbsp;|&nbsp;1&nbsp;|&nbsp;0&nbsp;|&nbsp;0&nbsp;|&nbsp;1&nbsp;|&nbsp;1&nbsp;|&nbsp;1&nbsp;|&nbsp;0&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;------------------------------<br />=-25°C<br />具体的温度转换关系如下图:<br /><br />更进一步的理解就是:将1820输出的九位数字值转换成温度值用数码管显示出来!其余的如芯片工作的条件:什么电压电流什么的就不懂了。。。还有什么资料上面写的“不需要外围电路”也是一头雾水。。。<br /><br />另外还存在比较多的疑问:<br />1,1820是不是说只要供电然后就会有九位数字值输出,然后像我这种目的的话就只需要读取然后转换然后用数码管显示就行?<br />2,数码管板块可以用单片机来“驱动”(不知道词语用的是否专业~),那1820和数码管板块之间的关系只需要用一根数据线就解决了吗?<br />3,现在如果想仿真的话是不是得从“接收九位数字值”这一步开始?--因为软件是不会有传感器这样的吧--即使有也无法仿真的吧~<br /><br />自知语言表达很是凌乱,恳请各位指正~<br /><br />PS:问句题外话,“回复请Email通知&nbsp;如果不填写则取注册Email&nbsp;”这个起作用吗--是不是因为雅虎邮箱给滤过了,就没有收到过回复的邮件。。。
 楼主| BITiramisu 发表于 2008-11-27 08:43 | 显示全部楼层

E

为什么没有人回复呢?<br /><br />自己顶一下~
 楼主| BITiramisu 发表于 2008-12-11 18:02 | 显示全部楼层

还是没有人回复。。。

不过我已经开始了,而且进行了挺大一部分了哈哈
elenment 发表于 2008-12-12 09:41 | 显示全部楼层

不行吧 大哥

那个18b20使用的是1-wire总线&nbsp;<br /><br />需要配时序&nbsp;数据位数啥的&nbsp;直接连<br /><br />弄个2051+18b20+数码管&nbsp;就行了<br />2051&nbsp;负责18b20的管理&nbsp;和数码管的驱动<br /><br />芯片的工作电压是5V<br />工作电流是&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果电压电流过低&nbsp;芯片工作会不正常<br />&nbsp;<br />工作期间&nbsp;只要提供足够的电压和电流&nbsp;芯片本身就能完成测温工作。<br />1,1820是不是说只要供电然后就会有九位数字值输出,然后像我这种目的的话就只需要读取然后转换然后用数码管显示就行?<br /><br />&nbsp;&nbsp;不行啊&nbsp;老大&nbsp;需要实现-wire的时序&nbsp;还要一些命令才能&nbsp;得到数据<br /><br /><br />2,数码管板块可以用单片机来“驱动”(不知道词语用的是否专业~),那1820和数码管板块之间的关系只需要用一根数据线就解决了吗?<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;の&nbsp;1820&nbsp;还是接到&nbsp;单片机上吧&nbsp;&nbsp;不过还需要电源和地&nbsp;啊<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><br />3,现在如果想仿真的话是不是得从“接收九位数字值”这一步开始?--因为软件是不会有传感器这样的吧--即使有也无法仿真的吧~<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;仿真???&nbsp;先把1820调出来再说&nbsp;<br /><br /><br /><br />网上的资料一大把&nbsp;模拟时序的程序也多了去了&nbsp;<br /><br /><br /><br />
 楼主| BITiramisu 发表于 2009-1-2 14:53 | 显示全部楼层

非常感谢楼上的~

实际上进展到目前,很多问题都得到了解决~<br /><br />1820的程序有现成的,记得“AVR单片机C语言开发入门指导”(清华大学出版社出版、沈文,&nbsp;Eagle&nbsp;lee,&nbsp;詹卫前编著)书上原原本本的程序。<br /><br />至于1820硬件电路的接法,芯片资料给出了两种。书上采取了第三种--也说不上第三种,利用MOSFET提供强上拉,使得外借温度变换期间仍然可以实现温度测量,但是GND管脚与VDD管脚接到一块却没有同时接地!<br /><br />问题就出在这个地方。如果按照资料(网上关于1820的资料都比较统一)上的典型电路第一种,还可以检测到设备(书上程序相关);如果电路换成书本上的,设备都已经检测不到了!<br /><br />导致搁置了,郁闷中。。。
李冬发 发表于 2009-1-6 21:57 | 显示全部楼层

ds18b20最重要的是,读得时候时间的宽度不能超过规定值

切电时转换时间远比电源供电时来得长。<br />还有就是在转换时不能进行任何其它的操作,因为“核”是单任务的。
 楼主| BITiramisu 发表于 2009-1-11 12:00 | 显示全部楼层

回6楼

正准备着考试,希望考完之后能够重新拾起来呵呵
liu_peter 发表于 2009-1-24 17:28 | 显示全部楼层

祝你成功

&nbsp;
Crystal6927 发表于 2013-3-22 11:39 | 显示全部楼层
加油吧!
adccadcc 发表于 2013-3-24 13:31 | 显示全部楼层
很简单的,自己查查资料
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

20

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部