预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共24页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

项目功能 项目知识点与技能点 项目知识准备 软件设计 硬件电路 项目实施【项目功能】【项目知识点与技能点】【项目知识准备】 1、单总线概述 目前常用的微机与外设之间进行数据传输的串行总线主要有I2C总线、SPI总线和SCI总线。这些总线至少需要两条或两条以上的信号线。 近年来,美国的达拉斯半导体(DALLASSEMICONDUCTOR)推出了一项特有的数据传输技术。该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的。这种具有线路简单,硬件开销,成本低廉,便于总线扩展和维护的数据传输技术被称之为单总线技术 2、单总线的工作原理 简单的说,单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线。单总线通常要求外接一个约为4.7kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。 主机和从机之间的通信可通过3个步骤完成,分别为初始化单总线器件、识别单总线器件和交换数据。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问单总线器件都必须严格遵循单总线命令序列,即初始化、ROM、命令功能命令。如果出现序列混乱,单总线器件将不响应主机(搜索ROM命令,报警搜索命令除外)。 3、使用单总线技术控制多个从机设备的基本原理及示意 单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。当只有一个从机设备时,系统可按单节点系统操作;当有多个从机设备时,系统则按多节点系统操作。下图所示是单总线多节点系统的示意图。 通常把挂在单总线上的器件称之为单总线器件,单总线器件内一般都具有控制、收/发、存储等电路。为了区分不同的单总线器件,厂家生产单总线器件时都要刻录一个64位的二进制ROM代码,以标志其ID号。对于每一个单总线器件,都有一个唯一的ID号与之相对应。在主机对其进行操作时,先对单总线上所有的单总线器件进行ID识别,然后确定要操作的单总线器件并匹配其ID号,最后通过读写指令对其进行操作。这样,便能保证所有单总线上各点与主机之间通讯畅通无阻、准确无误。4、单总线器件DS18B20的相关知识 1)DS18B20基本知识 DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,线路简单,在一根通信线可以挂很多这样的数字温度字温度传感器,十分方便。(1)DS18B20产品的特点 a、只要求一个端口即可实现通信。 b、在DS18B20中的每个器件上都有独一无二的序列号。 c、实际应用中不需要外部任何元器件即可实现测温。 d、测量温度范围在-55℃到+125℃之间。 e、数字温度计的分辨率用户可以从9位到12位选择。 f、内部有温度上、下限告警设置。(2)、DS18B20的引脚介绍 TO-92封装的DS18B20的引脚排列见图 DS18B20的引脚排列图 其引脚功能如下 GND:信号地 DQ:数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。 VDD:可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。2)DS18B20的读写方法 由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求,DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。(1)DS18B20的复位时序 所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 (2)DS18B20的读数据时序 对于DS18B20,数据的读取时序可分为读0和读1两个过程。DS18B20的读时序是从主机把单总线拉低之后,在15us之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。下图为DS18B20的读取数据时序图。 (3)DS18B20的写数据时序 DS18B20的写数据时序同样可以分为写0和写1两个过程,但在时序操作上与读取数据时序有所不同。当要写0时序时,单总线要被拉低至少60us,