最近用MUC做I2C从机试验,主机也从机都是硬件I2C,遇到个奇怪问题,从机地址刚开始设定为0x00,但是实际使用是用不了的,没响应,不知道为什么。后来地址设定为0x02以上就好了,多个MCU从机没有问题,都可以通信。
后来在I2C总线上接了个屏,在初始化屏幕后,所有从机没响应了,写也写不了,读也读不了。刚开始以为是负载问题,但是如果我不初始化屏幕,所有从机都可以通信。后来用proteus模拟后,发现初始屏幕时,会有很多时候发送0x00数据,且从机响应了,和实际不一样的就,初始化屏幕代码发送完毕后,从机还是有响应。
问题就是,为什么发送0x00数据时,MCU从机会有响应?估计也是这个原因,实际使用的时候,初始化完屏幕后,从机都没反应了。 |