打印
[STM32F4]

STM32F4系列的一主多从I2C无法发送外设地址的问题

[复制链接]
932|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zaijzhgh|  楼主 | 2017-11-10 20:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
使用STM32F40X系列MCU, 外设为两个I2C, MCU作Master, I2C接口设置为100KHz, 采用硬件中断方式读写数据
上拉电阻10K, 2.2K均使用过.
当单独读写其中的一个I2C时, 没有出现问题, 但两个I2C交替不定时读写, 就会出现下图2, 也就是发送了起始条件后, I2C设备地址发不出去就结束了. ACK, EV6, EV7均没有, 如下图1
仿真发现SR1, SR2均为零, DR的值为外设I2C地址, 没有发出去各位, 有没有思路能提供的? 谢谢了.

]@OXJ69699@FJ{]IQWUMY.png (19.76 KB )

图1

图1

TIM图片20171110192440.png (14.96 KB )

图2

图2
沙发
airwill| | 2017-11-11 08:24 | 只看该作者
根据总线协议, 主机在发送 start 后, 没有从机能够阻止主机发地址和读写命令的.
所以,我怀疑你的问题在主机里.
比如上个主机指令还没有完成, 就想又发另外一个指令

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

6

帖子

0

粉丝