zoukankan      html  css  js  c++  java
  • 4.IIC总线

    一.IIC总线说明:
          IIC总线时序只有高低电平的持续时间一般是大于多少us/ms。
          iic时序:
                开始:当SCL为高电平时,SDA由高电平状态切换到低电平状态时,会产生一个起始信号。
                停止:当SCL为高电平时,SDA由低电平转换为高电平,产生一个终止信号。
                数据位传输:当SCL为高电平时SDA的状态不能发生改变,在此过程中数据位被传输。
                          当SCL为低电平时SDA的状态可以发生改变,当SCL为高电平状态时被传输。
                应答信号的产生: 主机向从机写数据时,由从机产生应答信号,主机接收
                         主机读数据时,由主机产生应答信号,从机接收。 当第九个时钟信号到来时,SDA为高电平规定为不产生应答信号,低电平为产生应答信号。
          IIC设备读写序列:
                写:  START | SLAVEADDR W | ACK| MEMOMRYADDR| ACK| DATA LSB| ACK| DATA MSB| ACK| STOP|
                读:  START | SLAVEADDR W | ACK| MEMORYADDR | ACK| REPEATED START| MEMORYADDR R|ACK|DATA LSB|ACK|DATA MSB|NACK|STOP|
                         
     二.调试说明:
          确定总线时序没有问题时,应从多方面分析问题。
          对于IIC总线,当读取到的信号全为0XFF时,说明的问题是 :
                                                        时序问题 ,延迟不准确导致
                                                        硬件问题 ,接线是否正确,从机器件信息是否正确,线是否接反。
                                                        上拉电阻 ,因为SDA /SCL只能输出0,所以需要上拉电阻才能产生高电平。1.5K /2.2K /4.7K
         ******************
         **此次调试的问题:**
         ******************
                         确定软件时序没问题后,没能从硬件角度去查找问题。当GPIO引脚复用时,要开启RCC_APB2Periph_AFIO时钟。
                      各种信号都有电平状态,前期可以根据电平值初步估计硬件是否有问题。
                    
       
       三、多主机设备 multi host
       
                                                    

  • 相关阅读:
    取汉字字串的首字母
    回调函数
    [转].NET对象与COM对象
    [转]TCP与UDP的特点与区别
    【转】一张图分出你是用左脑还是右脑!
    并发基础(Runnable、Thread、Executor)
    Java序列化总结
    Hadoop安装配置手册
    MySQL配置信息解读(my.cnf)
    mysql主从备份、主从切换
  • 原文地址:https://www.cnblogs.com/nyqm/p/7955630.html
Copyright © 2011-2022 走看看