在实际过程中可能会发现硬件I2C锁死,无法读写的情况。STM32的话可以通过查询BUSY标志位来判断,进而使用软件复位的方式来回复异常状态,重置i2c,即可解决。如下:
GD32的情况有所不同,GD调用软件复位会清掉I2C配置,不如重新配置i2c或者使用stop来清除Bsy。
本文介绍了在STM32和GD32平台上遇到I2C硬件锁死无法读写的问题及解决方案。对于STM32,可通过查询BUSY标志位并使用软件复位;而对于GD32,则推荐使用重新配置I2C或使用stop来清除Bsy。
在实际过程中可能会发现硬件I2C锁死,无法读写的情况。STM32的话可以通过查询BUSY标志位来判断,进而使用软件复位的方式来回复异常状态,重置i2c,即可解决。如下:
GD32的情况有所不同,GD调用软件复位会清掉I2C配置,不如重新配置i2c或者使用stop来清除Bsy。
2896
2534
2940
5692
3633