STM32CubeMX生成的I2C代码的一个BUG,调用发送函数时一直返回HAL_BUSY
原因:生成的i2c代码没有复位i2c
解决方法:
在I2C初始化函数中加上这两句即可
hi2c->Instance->CR1 |= I2C_CR1_SWRST;
hi2c->Instance->CR1 &= ~I2C_CR1_SWRST;
其他原因请检查上拉电阻是否有问题
STM32CubeMX生成的I2C代码的一个BUG,调用发送函数时一直返回HAL_BUSY
原因:生成的i2c代码没有复位i2c
解决方法:
在I2C初始化函数中加上这两句即可
hi2c->Instance->CR1 |= I2C_CR1_SWRST;
hi2c->Instance->CR1 &= ~I2C_CR1_SWRST;
其他原因请检查上拉电阻是否有问题