1-wire 单总线的基本原理
- 格式:pdf
- 大小:186.59 KB
- 文档页数:7
目录目录 0摘要 (1)1课题研究 (2)2 设计要求与方案论证 (2)2.2方案研究 (6)3. 系统硬件电路设计 (7)3.1电路设计 (7)3.2系统硬件概述 (7)3.2.1主控制器AT89C51 (7)3.2.2时钟电路DS1302 (8)3.3主要单元电路设计 (9)3.3.1时钟电路 (9)4 系统的软件设计 (12)4.1程序设计 (12)4.2程序流程图 (12)4.2.1 显示驱动程序流程图 (12)4.2.3 时间控制流程图 (14)5 结束语 ..................................................................................... 错误!未定义书签。
参考文献 ..................................................................................... 错误!未定义书签。
附录一(电路原理图) (15)附录二(程序清单) (15)摘要随着单片机应用技术的发展,单片机的应用模式也在不断变化,一方面,单片机系统的规模越来越大,其外未连接了种,类繁多的外设;一方面,单片机进入了计算机网络系统,工业控制系统多采用多机分布式系统。
同时单片机的嵌入式系统应用模式使其体积越来越小且器件数目越来越少。
近年来,串行接口设备凭借其控制灵活,接口简单、占用资源少等优点在工业控制、仪器仪表等领域被广泛应用。
这些发展趋势更加使得串行通信功能加强了,同时带有串行接口器件也被广泛使用。
本次设计就是对不同总线方式进行研究,并选取带有一种总线接口的器件进行系统设计。
本文以AT89C51单片机作为主控中心,由带有SPI接口的DS1302时钟芯片提供时钟,并用LCD1602液晶显示器进行显示。
AT89C51单品即使有Atmel公司推出的,功耗小,电压可选用4-6V电压供电。
单总线测温系统1-W ire System for Temperature M easurement董 炜 王俊杰 杨士元(清华大学自动化系检测与电子技术研究所,北京 100084)摘 要 介绍了单总线系统的结构、原理和技术特点,阐述了单总线协议、操作流程以及DS18B20数字式温度传感器的功能结构,实现了一种基于RS-232串口的单总线适配器并给出了设计原理和电路图,最后给出了一种简单高效的单总线器件搜索算法。
关键词 单总线 数字式温度传感器 iButton DS18B20A bstract In this p aper,the structure and principle as well as technical characteristics of1-Wire System are in trod uced,and the protocol and opera ti on flow of1-Wi re System as well as the fu nction and s tructure of DS18B20digi tal thermometer are describ ed.A1-Wi re ad ap tor based on RS-232 serial comm unication port is i mplemented,its p rinci ple of d esign and circui t diagram are gi ven.Finall y,the si mplified an d effecti ve search arithmetic for 1-Wire comp onents is gi ven.Keyw ords 1-Wire System Digi tal therm ometer i Button DS18B200 引言随着计算机和网络技术的发展以及芯片集成工艺水平的不断提高,传统的基于模拟信号的测控系统逐渐向数字化方向发展。
1.DS18B20的工作原理① DS18B20数字温度传感器概述DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20产品的特点●只要求一个端口即可实现通信。
●在DS18B20中的每个器件上都有独一无二的序列号。
●实际应用中不需要外部任何元器件即可实现测温。
●测量温度范围在-55.C到+125.C之间。
●数字温度计的分辨率用户可以从9位到12位选择。
●内部有温度上、下限告警设置。
TO-92封装的DS18B20的引脚排列见右图,其引脚功能描述见表表3-2DS18B20详细引脚功能描述②DS18B20的内部结构DS18B20的内部框图下图所示,DS18B20 的内部有64 位的ROM 单元,和9 字节的暂存器单元。
64位ROM存储器件独一无二的序列号。
暂存器包含两字节(0和1字节)的温度寄存器,用于存储温度传感器的数字输出。
暂存器还提供一字节的上线警报触发(T H)和下线警报触发(TL)寄存器(2和3字节),和一字节的配置寄存器(4字节),使用者可以通过配置寄存器来设置温度转换的精度。
暂存器的5、6和7字节器件内部保留使用。
第八字节含有循环冗余码(CRC )。
使用寄生电源时,DS18B20不需额外的供电电源;当总线为高电平时,功率由单总线上的上拉电阻通过DQ引脚提供;高电平总线信号同时也向内部电容CPP充电,CPP 在总线低电平时为器件供电。
(字节5~8 就不用看了)。
图为暂存器A.温度寄存器(0和1字节)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
电子综合实践设计报告专业班级:学生姓名:指导教师:设计时间:物理与通信电子学院摘要DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单、体积小、低功耗、高精度、抗干扰能力强等特点的数字温度传感器。
本设计采用多点测温方法,在一个IO口上挂接多个DS18B20测温,在远距离工作时,为了防止信号的衰减,DS18B20用屏蔽双绞线包裹,远端接地的方法工作,并把所测得的温度在LCD上显示出来。
文中简要的介绍了DS18B20的基本特点、引脚功能、测温原理及时序的控制。
给出了DS18B20的使用电路、使用中的注意事项、硬件及软件设计方法。
经过测试,该系统的测量精度及速度等指标均能满足设计要求。
关键词:DS18B20 测温系统数字温度传感器多点测温目录摘要 (2)1 引言 (4)2 设计要求 (4)3 方案设计与原理 (4)3.1 DS18B20 简介 (4)3.1.1 DS18B20特性 (4)3.1.2说明: (5)3.1.3 DS18B20测温原理: (5)3.1.4 DS18B20测温原理图: (6)3.1.5 64位激光刻ROM (7)3.1.6 CRC发生器 (7)3.1.7 单总线系统 (7)3.2 DS18B20指令控制 (7)3.2.1 ROM时序指令控制 (8)3.2.2DS18B20功能指令控制 (8)3.3 18B20时序详解 (9)3.3.1初始化时序 (9)3.3.2读/写时序 (9)3.4二叉树遍历 (11)4 设计程序流程图: (16)5 设计硬件原理图 (17)6 DS18B20使用中应注意事项 (18)7测试中出现的问题及解决办法和说明: (18)8 结束语 (19)9 参考文献: (20)10 附录: (21)1 引言本系统利用DS18B20进行测温,基于单片机AT89S52进行温度控制,具有硬件电路简单,控温精度高、功能强,体积小,简单灵活等优点,可以应用于控制温度在-55℃到+125℃之间的各种场合,可以实现温度的实时采集、显示功能。
单总线协议单总线协议简介单总线协议(Single Bus Protocol)是一种用于在电子设备中进行通信的协议。
它使用一个共享的总线来传输数据和命令,并支持多个设备同时连接到总线上。
单总线协议具有简单、低成本和灵活性等优点,因此在许多应用中得到广泛采用。
单总线协议的基本原理是将数据和命令放置在总线上进行传输。
在传输过程中,总线上的信号被不同的设备监听和解析。
由于总线上只包含一个信号线,因此所有设备必须共享这个信号线来进行通信。
这就需要在协议中定义一种机制来处理冲突,以确保各个设备能够正确地接收数据和命令。
在单总线协议中,各个设备的工作方式被划分为两种模式:主模式和从模式。
主设备负责发出命令和发送数据,而从设备负责接收命令和接收数据。
在总线上,主设备会发送一个起始位作为命令的开始,从设备会发送一个应答位作为命令的确认。
通过在总线上发送和接收不同的位和字节,设备之间可以进行复杂的数据交互。
由于单总线协议的灵活性,它可以应用于各种不同的领域。
例如,它可以在计算机系统中用于处理外围设备的通信,或者在物联网设备中用于传输传感器数据。
此外,由于单总线协议的简单性,它还可以用于一些低成本的应用,如家电控制系统和智能家居系统。
然而,单总线协议也存在一些挑战和限制。
由于所有设备共享同一个总线,因此总线的带宽可能会成为瓶颈。
此外,在数据传输过程中可能会发生冲突和错误,需要采取合适的机制来解决这些问题。
同时,由于总线上的信号线只有一个,如果其中一个设备发生故障或出现通信问题,可能会影响到其他设备的正常工作。
总之,单总线协议是一种用于电子设备通信的简单、低成本和灵活性较高的协议。
它使用一个共享的总线来传输数据和命令,并支持多个设备同时连接到总线上。
虽然它具有一些挑战和限制,但在许多应用中仍然得到广泛采用。
随着技术的不断发展,相信单总线协议将在未来发挥更重要的作用,为更多领域的设备通信提供解决方案。
用并行方式实现快速读写多只单总线器件摘要本文简单的介绍了单总线串行总线信号传输方式,并提出一种利用MCU的并口进行字节寻址的方式,同时对多个单总线器件进行并行读写的方法及其具体的算法实现。
关键词单片机;MCU;单总线;1-Wire Bus目前,常用的MCU与外接的元器件进行数据通信的串行总线主要有I2C总线、SPI总线和SCI总线。
其中I2C总线以2线连接(一条时钟线,一条数据线)进行同步串行通信;SPI总线则以3线连接(一条时钟线,一条数据输入线,一条数据输出线)进行同步通信;SCI总线是以两线连接(一条数据输入线,一条数据输出线)进行异步串行进行通信的。
这些总线至少需要两条或两条以上的信号线。
而美国的DALLASS半导体公司推出的单总线(1-Wire Bus)技术采用了单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。
目前,常见的单总线器件主要有数字温度传感器DS18B20、A/D转换器如DS2450、电源管理芯片DS2438等。
对于单总线器件,每一个器件内都有一个64位的ROM,包含有8位的产品系列编码和48位的ID号。
这些ID号对每个单总线器件都是唯一的,因此我们可以在一条单总线上挂接多个单总线器件,然后使用单总线传输协议规定的ReadROM和SearchROM的操作命令来搜索这些器件的ID号,并用MatchROM 命令选择各个特定ID号的单总线器件分别对其进行读写。
但是,在实际应用中,尤其是在一个MCU上连接有多个同类型的单总线器件的情况下,这种通过搜索和指定ID号来读写单总线器件的方式并不方便。
我们虽然可以用ID号来区分各个器件并且分别对其读写而互不干扰,但是没有很简单的办法把每一个ID号和某个具体的单总线器件对应起来,因为每个单总线器件的ID号都是随机的,而且这个ID号并没有标示在元件上面。
1.DS18B20的工作原理●①DS18B20数字温度传感器概述●DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20产品的特点●只要求一个端口即可实现通信。
●在DS18B20中的每个器件上都有独一无二的序列号。
●实际应用中不需要外部任何元器件即可实现测温。
●测量温度范围在-55.C到+125.C之间。
●数字温度计的分辨率用户可以从9位到12位选择。
●内部有温度上、下限告警设置。
序号名称引脚功能描述1 GND 地信号2 DQ 数字输入输出引脚,开漏单总线接口引脚,当使用寄生电源时,可向电源提供电源3 VDD 可选择的VDD引脚,当工作于寄生电源时,该引脚必须接地表3-2DS18B20详细引脚功能描述②DS18B20的内部结构DS18B20的内部框图下图所示,DS18B20 的内部有64 位的ROM 单元,和9 字节的暂存器单元。
64位ROM存储器件独一无二的序列号。
暂存器包含两字节(0和1字节)的温度寄存器,用于存储温度传感器的数字输出。
暂存器还提供一字节的上线警报触发(T H)和下线警报触发(TL)寄存器(2和3字节),和一字节的配置寄存器(4字节),使用者可以通过配置寄存器来设置温度转换的精度。
暂存器的5、6和7字节器件内部保留使用。
第八字节含有循环冗余码(CRC )。
使用寄生电源时,DS18B20不需额外的供电电源;当总线为高电平时,功率由单总线上的上拉电阻通过DQ引脚提供;高电平总线信号同时也向内部电容CPP充电,CPP在总线低电平时为器件供电。
(字节5~8 就不用看了)。
图为暂存器A.温度寄存器(0和1字节)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
用并行方式实现快速读写多只单总线器件摘要本文简单的介绍了单总线串行总线信号传输方式,并提出一种利用mcu的并口进行字节寻址的方式,同时对多个单总线器件进行并行读写的方法及其具体的算法实现。
关键词单片机;mcu;单总线;1-wire bus中图分类号tp368.1 文献标识码a 文章编号1674-6708(2010)24-0200-02目前,常用的mcu与外接的元器件进行数据通信的串行总线主要有i2c总线、spi总线和sci总线。
其中i2c总线以2线连接(一条时钟线,一条数据线)进行同步串行通信;spi总线则以3线连接(一条时钟线,一条数据输入线,一条数据输出线)进行同步通信;sci总线是以两线连接(一条数据输入线,一条数据输出线)进行异步串行进行通信的。
这些总线至少需要两条或两条以上的信号线。
而美国的dallass半导体公司推出的单总线(1-wire bus)技术采用了单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。
目前,常见的单总线器件主要有数字温度传感器ds18b20、a/d转换器如ds2450、电源管理芯片ds2438等。
对于单总线器件,每一个器件内都有一个64位的rom,包含有8位的产品系列编码和48位的id号。
这些id号对每个单总线器件都是唯一的,因此我们可以在一条单总线上挂接多个单总线器件,然后使用单总线传输协议规定的readrom和searchrom的操作命令来搜索这些器件的id号,并用matchrom命令选择各个特定id号的单总线器件分别对其进行读写。
但是,在实际应用中,尤其是在一个mcu上连接有多个同类型的单总线器件的情况下,这种通过搜索和指定id号来读写单总线器件的方式并不方便。
我们虽然可以用id号来区分各个器件并且分别对其读写而互不干扰,但是没有很简单的办法把每一个id号和某个具体的单总线器件对应起来,因为每个单总线器件的id号都是随机的,而且这个id号并没有标示在元件上面。
单总线协议简介单总线协议是一种用于在微控制器和外部设备之间进行通信的协议。
它通过使用单根线路来传输数据和控制信号,简化了通信的硬件设计,并提供了简单、低成本的解决方案。
工作原理单总线协议通过在线路上使用时间分割的方式实现数据和控制信号的传输。
具体而言,每个数据位或控制信号都使用一定的时间段表示,例如高电平表示逻辑1,低电平表示逻辑0。
通过在不同时间段内改变信号的电平状态,可以实现信息的传输。
总线结构在单总线协议中,存在一个主控设备和多个从属设备的通信网络。
主控设备负责生成时序信号以及向总线上发送和接收数据,而从属设备根据主控设备的指令来进行响应。
数据传输数据传输是单总线协议的核心。
在数据传输过程中,主控设备首先发送一个引导信号,以通知所有从属设备即将进行数据传输。
然后,主控设备按照一定的时间序列发送数据位,从属设备在每个时间段内对数据进行采样。
数据传输完成后,主控设备发送结束标志信号,以告知从属设备传输结束。
优点单总线协议有以下几个优点:1.简化硬件设计:单总线协议只需要一根线路,相比于其他多线协议,可以大大减少硬件成本和复杂度。
2.低成本:由于只需要一根线路,单总线协议的硬件和线缆成本较低。
3.易于实现:单总线协议的工作原理相对简单,容易实现和理解。
4.可靠性高:单总线协议通过引导信号和结束标志信号来通知数据传输的开始和结束,确保数据的可靠传输。
应用场景单总线协议广泛应用于各种微控制器和外设设备之间的通信,特别适用于资源有限的应用场景。
以下是一些常见的应用场景:1.温度传感器:单总线协议可以用于将温度传感器与主控设备连接,实现温度数据的实时采集和传输。
2.LED控制:通过单总线协议,主控设备可以控制多个LED灯的开关、亮度和颜色。
3.电动机控制:单总线协议可以用于控制电动机的速度和方向,实现精确的运动控制。
4.智能家居:通过单总线协议,各种传感器和执行器可以与智能家居系统连接,实现自动化控制。