TI中文支持网
TI专业的中文技术问题搜集分享网站

跪求280049的I2C模块通信中断问题原因

DSP通过I2C通信与ZLG72128芯片互传数据。在调试过程中发现,I2C通信会不定时的结束发送,且不能恢复,具体情形如下:

 

1,当其他任务中断开启时,且在I2C的写函数中,将I2C的MDR寄存器的STT位先置1,再将STP位置1,会出现发送几十帧数据后停止发送。(将其他任务中断关闭后,I2C通信收发均不出现故障)

 

2,当其他任务中断开启时,且在I2C的写函数中,将I2C的MDR寄存器的STP位先置1,再将STT位置1,I2C通信收发均不出现故障

 

3, 当其他任务中断开启时,且在I2C的写函数中,将I2C的MDR寄存器的STT位先置1,加入一定延时后,再将STP位置1,I2C通信收发均不出现故障

Green Deng:

你好,这个问题可以参考一下这个帖子:e2echina.ti.com/…/189387

,

user6441406:

非常感谢你的回复,我也看了你推荐的帖子,发现里面的问题及方法和我遇到的情况不一样。我是在STT位置1后紧接着将STP位置1,发送几帧数据后就无法发送了,如果在中间加入一定延时,则不会出现。或者先将STP位置1,再将STT位置1,也不会出现故障。我想搞清这种现象的原因是什么?

这是出现I2C停止发送现象的发数据代码

图片是I2C停止发送的最后一帧错误数据

,

Green Deng:

你好,请问有没有检测过I2C状态寄存器在错误出现的时候的状态是怎么样的?

,

leaonliu:

请问,还有人跟踪这个问题吗,我遇到了很类似的情况,也是280049的I2C该发STOP位的时候没有发送,具体提问和波形在这里
e2echina.ti.com/…/200515

赞(0)
未经允许不得转载:TI中文支持网 » 跪求280049的I2C模块通信中断问题原因
分享到: 更多 (0)