我是靠谱客的博主 刻苦日记本,最近开发中收集的这篇文章主要介绍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
   
                                                

转载于:https://www.cnblogs.com/nyqm/p/7955630.html

最后

以上就是刻苦日记本为你收集整理的4.IIC总线的全部内容,希望文章能够帮你解决4.IIC总线所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部