手机号登录
手机号重置密码
只需一步,快速开始
DS1820使用中注意事项 DS1820虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题: (1) 较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。 (2) 在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。 (3) 连接DS1820的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。 (4) 在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。 测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。
如实验一:在200m长的一线网络电缆中挂接16个DS18B20测试,用串口调试助手可以读到所有DS18B20有效数据,但是再增加时,读取速度明显变慢,有时甚至不能读全所有的温度数据。实验一分析:由于每个DS18B20都需要一定的温度转换的时间,所以若采用串行逐个检测的方法,检测时间等于每个所需时间之和,一个大约需要700-900us,所以时间会显著增加。为此,修改DS18B20温度转换及搜索DS18B20 ROM序列的方法,改用先广播通知所有器件进行温度转换,然后再采用搜索序列码的方法来温度,即先跳过ROM(CCH),进行温度转换(44H),然后再开始搜索ROM(FOH)和匹配ROM(55H)来读序列号对应的DS18B20的温度(33H)。实验二:在280m长的一线网络电缆中挂接49个DS18B20测试可以得到有效数据,挂接50个总线上有其他4个DS18B20温度读数为0。实验二分析:后来发现,后来加上的DS18B20的生产批号与其它的不一致,因为DS18B20本身也在不断地改进,生产批次不同,有些技术参数会不太吻合,这是程序的时序等要做相应的调整,为了一致起见,将这几个批次不同的器件剔除后电路又恢复了正常。 在后续的实验中得到的最佳结果是:单总线直线型拓扑结构下,总线电缆长度280m时,总线上挂接62个DS18B20仍能正常读取温度数据,且此结果在改善传输电缆性能后仍有潜力。另外T型拓扑结构无法用于实际粮库多点长距离测温。 以上实验结果表明:根据74ACT244驱动电路原理图,运用STC89C58作主控,普通双绞线电缆作传输线的单总线测温系统的承载能力有很大的提高,能够很好的改善原粮库单总线测温遇到的问题。
使用道具 举报
本版积分规则 发表回复 回帖后跳转到最后一页
Archiver|联系我们|极客工坊
GMT+8, 2026-6-16 04:27 , Processed in 0.040704 second(s), 18 queries .
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.