通信协议之一线协议(1-Wire)解析

目录

一线协议概述

 通信过程


一线协议概述

异步通信 串行 半双工(分时) 电平信号

定义:主机和从机通过一根数据线进行通信,在一条总线上可以挂多个器件。

特点:①没有相应的时钟线,所以是异步通信

           ②只有一根总线,所以是串行传输数据

           ③这根总线既可以传输时钟又可以传输数据,可以双向传输,但是要分时,所以是半双工通信

           ④有参考电平线(GND),所以是电平信号

           ⑤单总线上所有的命令或数据的发送都是遵循低位先发送的原则


 通信过程

1)初始化

初始化过程由主机发送复位脉冲和从机发送应答脉冲组成。

主机拉低总线480~960ns产生复位脉冲,然后释放总线,进入接收模式。主机释放总线时,产生上升沿,从机再检测到上升沿之后,保持高电平15~60ns,然后再拉低总线60~240us产生应答脉冲。主机接收从机的应答脉冲表示从机准备完毕,开始通信。

2)写间隙(写0间隙和写1间隙)

所有的写间隙至少需要60us,并且两次独立的写间隙至少需要1us的恢复时间,两种写间隙始于主机拉低总线。在写间隙开始的15~60us期间,单总线器件(从机)采样总线电平状态。如果为高电平,则写入1,如果为低电平,则写入0。

  1. 写1时,主机要先将数据线拉低,然后在写间隙开始后的15us内将数据线拉高直至时间结束
  2. 写0时,主机必须要将数据线拉低并保持至少60us

 

3)读间隙

从机在主机发出读间隙的时候,才向主机 传输数据,所以当主机发出读数据命令后,必须马上产生读间隙,以便能够顺利读到数据。所有读间隙至少60us,且两次读间隙之间至少需要1us的恢复时间。

当主机拉低总线至少1us发起读间隙,此时从机才开始发送数据。从机发送1,则为高电平,从机发送0,则为低电平。

当从机发送0时,在该读间隙结束后释放总线,总线由上拉电阻拉至高电平。从机发出数据保持有效时间15us。所以主机在读间隙期间要释放总线(此时由从机控制),并且在读间隙起始的15us内采样总线状态,获取数据。

DS18B20温度传感器工作原理

 

 

 

  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值