zoukankan      html  css  js  c++  java
  • IIC总线协议

    1.IIC通信定义

    多主机半双工同步串行总线。

    由数据线 SDA 和时钟 SCL 构成的串行总线,时钟信号全程由主机提供。

    2.IIC传输速度

        S(标准模式)测量与控制场合,100kb/s

        F(快速模式),速率为 400kb/s

        Hs(高速模式),速率为 3.4Mb/s。  

    3.IIC数据传送格式

    每一个字节必须保证是8位长度。数据传送时,先传送最高位(MSB),

    每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位)。

    4.IIC起始和停止信号

    • 起始:时钟线SCL为高时,数据线SDA由高到低
    • 停止:时钟线SCL为高时,数据线SDA由低到高

    SDA和SCL同时为高时,为IIC总线的空闲状态。

     除了启动及停止的状况下,所有的SDA 信号变化都要在SCL 时钟为低电平时进行;

    数据位在每一个时钟周期的高电平期间保持稳定,不可以进行改变。

    每次数据传送总是由主机产生的停止信号结束。

    5.IIC应答信号

    数据接收方对发送方回应一个低电平信号;此时数据发送方释放SDA信号线的控制。

    由于IIC总线上有上拉电阻,因此此时总线默认高电平,若接收方正确接收到数据,则将SDA总线拉低,以示应答。

    由于某种原因, 不产生应答时,如被控器正在进行其它处理无法接收总线上的数据时,

    必须释放总线,将数据线置高电平,然后主控器可通过产生一个停止信号终止数据传输。

    6.IIC读写时序

    写时序

     读时序

     进行读操作时,首先仍是写操作,先向从机写入要读取的数据地址,随后重新发送开始信号及从机地址的读请求,

    从机应答后发送数据,直到不需要在读取时主机回复nAck,发起结束信号,通信结束。

     参考资料

    https://zhuanlan.zhihu.com/p/161710767

    https://www.cnblogs.com/ninghechuan/p/6965566.html

  • 相关阅读:
    hdu 4308 Saving Princess claire_ BFS
    进程调度
    LinearLayout具体解释一:LinearLayout的简单介绍
    CSS: 解决Div float后,父Div无法高度自适应的问题
    框架布局FrameLayout
    Coundn't load memtrack module (No such file or directory)
    线性布局LinearLayout
    android视图概述
    activity状态的保存和恢复
    回溯和DFS效率分析
  • 原文地址:https://www.cnblogs.com/Gimiracle/p/13819358.html
Copyright © 2011-2022 走看看