通讯协议--OneWire单总线

文章目录

  • 一、单总线
  • 二、单总结电路规范
  • 三、单总线时序结构
    • [   初始化:Start](#   初始化:Start)
    • [   发送一位:Send(bit)](#   发送一位:Send(bit))
    • [   接收一位:Read(bit)](#   接收一位:Read(bit))
    • [   发送一个字节:](#   发送一个字节:)
    • [   接收一个字节:](#   接收一个字节:)

一、单总线

   单总线(1-Wire BUS)是由Dallas公司开发的一种通用数据总线。

   一根通信线:DQ

   通讯方式:异步、半双工

   单总线只需要一根通信线即可实现数据的双向传输,当采用寄生供电时,还可以省去设备的VDD线路,此时,供电加通信只需要DQ和GND两根线。

二、单总结电路规范

  

  

   设备的DQ均要配置成开漏输出模式

   DQ添加一个上拉电阻,阻值一般为4.7KΩ左右

   若此总线的从机采取寄生供电,则主机还应配一个强上拉输出电路

三、单总线时序结构

   初始化:Start

     主机将总线拉低至少480us,然后释放总线,等待1560us后,存在的从机会拉低总线60240us以响应主机,之后从机将释放总线

    

   发送一位:Send(bit)

     主机将总线拉低60120us,然后释放总线,表示发送0;主机将总线拉低115us,然后释放总线,表示发送1。从机将在总线拉低30us后(典型值)读取电平,整个时间片应大于60us.

    

   接收一位:Read(bit)

     主机将总线拉低1~15us,然后释放总线,并在拉低后15us内读取总线电平(尽量贴近15us的末尾),读取为低电平则为接收0,读取为高电平则为接收1 ,整个时间片应大于60us

    

   发送一个字节:

     连续调用8次发送一位的时序,依次发送一个字节的8位(低位在前)

    

   接收一个字节:

     连续调用8次接收一位的时序,依次接收一个字节的8位(低位在前)

    

相关推荐
大爱编程♡12 小时前
GPIO-I2C
stm32·单片机·嵌入式硬件
振南的单片机世界14 小时前
PVD掉电中断——让单片机“咽气前”写完遗书
arm开发·stm32·单片机·嵌入式硬件
续写烂尾16 小时前
SD NAND存储实测:正点原子STM32精英板SDIO读写验证全流程
stm32·单片机·嵌入式硬件
wuyk55519 小时前
1.栈:后进先出的线性数据结构
c语言·数据结构·stm32·单片机
Crkylin19 小时前
Cortex-M SysTick系统滴答定时器详解
单片机·嵌入式硬件
gscsded20 小时前
AUTOSAR CanTp 模块学习笔记
单片机·嵌入式硬件·汽车
Hello_Damon_Nikola20 小时前
扰流筋从原理到应用
人工智能·单片机·嵌入式硬件
hongmai66688821 小时前
ESP32-WROVER-B-N8R8:8MB PSRAM加持的经典双核模组,现在还值得选吗?
单片机·嵌入式硬件·物联网·智能路由器·risc-v
0x3F(小茶)1 天前
复位异常(Cortex-M处理器)
单片机·mcu
SilicoCode1 天前
STM32入门教程:BKP备份寄存器 & RTC实时时钟详解
stm32·单片机·嵌入式硬件