【很好】第八章常用串行总线及应用解读
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.1.2 DS18B20的引脚及内部结构
1 .DS18B20的封装 DS18B20的封装采用TO-92和8-Pin SOIC封装,外形及管脚排列如图 8-1。 DS18B20引脚定义: GND 为电源地。 DQ 为数字信号输入/输出端。 VDD 为外接供电电源输入端 (在寄生电源接线方式时接地)。 NC 空引脚。
单总线的开发使用过程分三步:1)单总线的 硬件连接结构;2)单总线的操作命令序列;3) 单总线的通信协议,总线的操作时序。 1.硬件结构 主机或从机通过一个漏极开路或三态端口连接 至该数据线,这样允许设备在不发送数据时释 放数据总线,以便总线被其它设备所使用。
为了使总线上所有电路的输出能完成“线与” 的功能,连接到总线上的器件的输出级必须为 “开漏”或“开集”的形式。其内部等效电路 如图8-3所示
控制器对18B20操作流程
总流程:初始化1-WIRE 总线——>发送ROM 命令——>发送Memory 命令——>提取数据(可以没有) 1.复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器 (单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接 到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。 2.存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以 便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的低电 平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制 器与18B20间的数据通信。如果复位低电平的时间不足或是单总线的 电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。
8.1.1 DS18B20的简介
DALLAS(达拉斯)公司生产的DS18B20温度传感器具有超小的 体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强。 DS18B20的优势是我们学习单片机技术和开发温度相关的小产品的 不二选择。
DS18B源自文库0的主要特征:
������ 全数字温度转换及输出。 ������ 先进的单总线数据通信。 ������ 最高12位分辨率,精度可达土0.5摄氏度。 ������ 12位分辨率时的最大工作周期为750毫秒。 ������ 可选择寄生工作方式。 ������ 检测温度范围为–55°C ~+125°C (–67°F ~+257°F) ������ 内置EEPROM,限温报警功能。 ������ 64位光刻ROM,内置产品序列号,方便多机挂接。 ������ 多样封装形式,适应不同硬件系统。
5)配置寄存器 暂存器的第五字节是配置寄存器,可以通过相应的写命令 进行配置其内容如下表:
低五位一直都是“1”,TM是测试模式位,用于设置 DS18B20在工作模式还是在测试模式。在DS18B20出厂 时该位被设置为0,用户不要去改动。R1和R0用来设置 DS18B20的分辨率 。
8.1.3
单总线开发使用
2 . DS18B20的构成
DS18B20内部结构图如图8-2所示。主要包括: 寄生电源、温度传感器、64位激光(lasered)ROM、存放 中间数据的高速暂存器RAM、非易失性温度报警触发器 TH和TL、配置寄存器等部分。
1)寄生电源 寄生电源由二极管VD1、VD2、寄生电容C和电源检测电路 组成,电源检测电路用于判定供电方式,DS18B20有两种 供电方式:3V~5.5V的电源供电方式和寄生电源供电方式。 在寄生电源供电方式下,DS18B20从单线信号线上汲取能 量:在信号线DQ处于高电平期间把能量储存在内部电容里, 在信号线处于低电平期间消耗电容上的电能工作,直到高 电平到来再给寄生电源(电容)充电。该寄生电源有两个 优点:第一,检测远程温度时无需本地电源;第二,缺少 正常电源时也能读ROM。 2)64位只读存储器ROM ROM中的64位序列号是出厂前被光刻好的,它是该 DS18B20的地址序列码。光刻ROM的作用是使每一个 DS18B20都各不相同,可以实现一根总线上挂接多个 DS18B20。64位光刻ROM序列号的排列是:开始8位 (28H)是产品类型标号,接着的48位是该DS18B20自身 的序列号,最后8位是前面56位的循环冗余校验码 (CRC=X8+X5+X4+1)。
3)内部存储器
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和 一个非易失性的可电擦除的EEPROM,EEPROM用于存放 高温度和低温度触发器TH、TL和配置寄存器的内容。高速 暂存存储器由9个字节组成。
4)温度传感器 D7 D6 D5 D4 D3 D2 D1 D0 DS18B20中的温度传感器可 23 22 21 2-0 2-1 2-2 2-3 2-4 以完成对温度的测量。 DS18B20的温度测量范围是55℃~+125℃,分辨率的默认 D15 D14 D13 D12 D11 D10 D9 D8 值是12位。DS18B20温度采 集转化后得到16位数据,存储 S S S S S 26 25 24 在DS18B20的两个8位RAM中, 高字节的高5位S代表符号位, 如果温度值大于或等于零,符 对应的温度计算:当符号位S=0时,直 号位为0;温度值小于零,符 接将二进制位转换为十进制;当S=1时, 号位为1。低字节的第四位是 先将补码变为原码,再计算十进制值。 小数部分,中间7位是整数部 分。
2.单总线操作命令序列
典型的单总线命令序列如图8-4所示,每次访问单 总线器件,必须严格遵守这个命令序列,否则,单总 线器件不会响应主机。但是,这个准则对于搜索 ROM命令和报警搜索命令例外,在执行两者中任 何一条命令之后,主机不能执行其后的功能命令, 必须返回,从初始化开始。
根据DS18B20的通讯协议,主机(单 片机)控制DS18B20完成温度转换必须 经过三个步骤:每一次读写之前都要对 DS18B20进行复位操作,复位成功后发 送一条ROM指令,最后发送RAM指令, 这样才能对DS18B20进行预定的操作。
第八章 常用串行总线介绍及 应用
目前单片机应用系统比较常见的串行扩展接口 和串行扩展总线有:1-Wair单总线、SPI串行 总线、IIC总线。
8.1
1-wire总线
1-wire单总线采用单根信号线,既可以传输时钟又可以传 输数据,而且数据传输是双向的。它具有节省I/O口资源、 结构简单、成本低廉、便于总线扩展和维护等诸多优点。 1-wire单总线适用于单个主机系统,能够控制一个或多个 从机设备。当只有一个从机位于总线上时,系统可按照单 节点系统操作,而当多个从机位于总线上时则系统按照多 节点系统操作。 我们以单总线温度传感器DS18B20的应 用为例,详细介绍1-wire的应用。