IIC应答信号问题请教各位
IIC应答信号应该是当写的时候,单片机引脚设置为输出,SDA置高,然后设置为输入,检测信号,等待IIC器件将其拉低表示收到数据,理论上应该是这么个过程吧,但是问题是我的引...
IIC应答信号应该是当写的时候,单片机引脚设置为输出,SDA置高,然后设置为输入,检测信号,等待IIC器件将其拉低表示收到数据,理论上应该是这么个过程吧,但是问题是我的引脚输出高电平后,一直没有被拉低,请问这是什么原因呢?
展开
1个回答
展开全部
这个原因是多方面的,首先你需要确定你的时序符合要求,拉高,拉低的电平脉宽符合芯片手册的要求。如果符合,而且又在第一个地址发过去都没有ACK返回的话,就很有可能是从地址的问题,这个可能性很多
从地址问题,检查一下
芯片外围电路问题,如reset那里的电阻,电容有问题
芯片坏了
有多个IIC芯片,存在抢占问题,该情况可通过加个IIC中继器芯片来解决
话PCB板有时用的盗版软件,封装会自动镜像,导致焊接也焊接反了,如二极管等
注意,这些情况都是在你用示波器观察时序无误的基础上的错误,我都有碰到过,所以你需要一个一个排除。希望能帮到你。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询