No.65070 作者:emtronixuser 邮件:support@sw996.com ID:136446 登陆:1次 文章数:48篇 最后登陆IP:118.115.14.158 最后登陆:2010/1/6 21:57:10 注册:2009/9/9 12:45:20 财富:100 发帖时间:2009/9/22 9:45:43 发贴者IP:60.255.30.12 标题:emtronixuser:基于DS18B20测温系统解决方案[转帖] 摘要:No.65070基于DS18B20测温系统解决方案[转帖] 文章来源: http://www.emtronix.com/article/article2009316.html 英创嵌入式主板以其优异的稳定性、独特的设计及方便使用等优点,在嵌入式领域占有一席之地。在工业现场,经常有监测环境温度的需求,本方案应用DS18B20为温度采集芯片,与英创嵌入式主板的GPIO相连,就可以组成完整的测温系统。由于DS18B20每条总线上可以最多接8个测温点,那么英创嵌入式主板至少可以接64个测温点。 TO-92封装的DS18B20的引脚排列见图1,其引脚功能描述见表1。 图1 DS18B20管脚示意图 表1 DS18B20详细引脚功能描述: 序号 名称 引脚功能描述 1 GND 地信号 2 DQ 数据输入/输出引脚。开漏单总线接口引脚。 当被用着在寄生电源下,也可以向器件提供电源。 3 VDD 可选的VDD引脚。当工作于寄生电源时,此引脚必须接地。 DS18B20的使用方法 由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对嵌入式主板来说,硬件上并不支持单总线协议,因此,我们必须采用GPIO的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。在本示例中,只需把管脚2接英创嵌入式主板的GPIO,管脚3接5V电源,管脚1接地,就可以搭建起测试环境,如图二所示。如果需要测试多点温度,可以把多个DS18B20并起。 图2 嵌入式主板与DS18B20连接示意图 由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将嵌入式主板作为主设备,单总线器件作为从设备。每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件送回数据,在进行写命令后,主机需要启动读时序完成数据接收。数据和命令的传输都是低位在先。 下面是18B20的时序图,根据时序的要求,改变GPIO的电平,可以完成18B20的操作。 ......
>>返回讨论的主题
|