还是想看看硬件iic到底是什么问题,其他元件就一个串口屏,应该不会影响iic时序的,但还是卡这里了:
听说自己加超判断可以修改,但超时的话不就证明接收失败了吗?据说st的iic本身是没有问题的,应该怎么改才能勉强可用呢
自己加超时判断 如果失败就继续发送 一般不会长时间连续失败
如果是长时间失败 没有成功过 说明代码有问题
STM32的标准库里面硬件I2C有BUG,这里解决方法是要加个超时,放弃此次操作,然后下次再尝试通信,只是会丢掉一次数据而已
如果想避免这个BUG,最好还是用新版HAL库下面的硬件I2C,那里面就没这个BUG