the code equivalent of smacking something really hard with a wrench
This commit is contained in:
parent
b325eadc33
commit
c12860ff7d
@ -35,21 +35,6 @@
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
|
||||
void i2c_reset(void) {
|
||||
#ifdef I2C1
|
||||
__HAL_RCC_I2C1_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C1_RELEASE_RESET();
|
||||
#endif
|
||||
#ifdef I2C2
|
||||
__HAL_RCC_I2C2_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C2_RELEASE_RESET();
|
||||
#endif
|
||||
#ifdef I2C3
|
||||
__HAL_RCC_I2C3_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C3_RELEASE_RESET();
|
||||
#endif
|
||||
}
|
||||
|
||||
void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
|
||||
@ -100,6 +85,22 @@ void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
|
||||
GPIO_InitStruct.Alternate = self->scl->altfn_index;
|
||||
HAL_GPIO_Init(pin_port(scl->port), &GPIO_InitStruct);
|
||||
|
||||
#ifdef I2C1
|
||||
__HAL_RCC_I2C1_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C1_RELEASE_RESET();
|
||||
#endif
|
||||
#ifdef I2C2
|
||||
__HAL_RCC_I2C2_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C2_RELEASE_RESET();
|
||||
#endif
|
||||
#ifdef I2C3
|
||||
__HAL_RCC_I2C3_FORCE_RESET();
|
||||
HAL_Delay(2);
|
||||
__HAL_RCC_I2C3_RELEASE_RESET();
|
||||
#endif
|
||||
|
||||
#ifdef I2C1
|
||||
if(I2Cx==I2C1) __HAL_RCC_I2C1_CLK_ENABLE();
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user