最近楼主遇到一个很奇怪的问题。之前用LQFP64封装的103芯片楼主花了很大的力气调通了中断的硬件I2C2。可把程序搬到相同引脚数的BGA封装的103芯片中时,奇怪的现象发生了:I2C2外设的寄存器内容根本无法修改。 问题如下: 从上图可以看出I2C2的时钟确实是使能了的。而且串口3的时钟也是关着的。引脚上的冲突并不会发生。 可执行完I2C_ITConfig(I2C2,I2C_IT_EVT|I2C_IT_BUF,ENABLE);后I2C2寄存器的内容始终没发生变化。 楼主改了下代码,把I2C2的地方全换成了I2C1,令人欣慰的是I2C1外设寄存器可以正常写入。这也让楼主更加不解了,为啥同时APB1外设,同样的软件设置,I2C2的差距咋就这么大涅。不知道有没有大神也遇到过这个问题。求解释。难道是BGA封装的I2C2禁用? |
RE:I2C2硬件不能使用