STM32 I2C 搞了几天了,比较郁闷,写点东西给那些正在郁闷的同志

// 好使的,也是范例的代码
cnt = TIME_OUT;
while (cnt-- && !I2C_ChechEvent(I2C2, XXX));
if (!cnt) goto err;

// 不好使,总是超时
cnt = TIME_OUT;
while (!I2C_ChechEvent(I2C2, XXX)) {
  cnt--;
  if (cnt == 0) goto err;
}

// 死在这了,动不了
while (!I2C_ChechEvent(I2C2, XXX));

另一个问题,如果只初始化I2C2,我的I2C外设芯片经常不能正常工作,后来发现如果这个时候把I2C3也使能,然后差不多配置下,
居然就好使了。别问我为什么,郁闷的同志可以考虑按照这个方法试试(急病乱投医啊!!!)

相关文章:

  • 2021-04-04
  • 2022-12-23
  • 2022-12-23
  • 2021-08-29
  • 2021-12-14
  • 2021-12-26
  • 2021-06-13
  • 2021-12-09
猜你喜欢
  • 2021-10-16
  • 2021-11-29
  • 2022-12-23
  • 2021-09-25
  • 2021-09-10
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案