while(timeout && (((I2C_GPIO_PORT->IDR)>>10)&0x01)==0)timeout--;}#defineSDA_DOWN GPIO_ResetBits(I2C_GPIO_PORT, I2C_SDA_GPIO_PIN)#defineSDA_UP GPIO_SetBits(I2C_GPIO_PORT, I2C_SDA_GPIO_PIN)#defineSDA_OUT (GPIOB->MODER |= ((uint32_t)0x01 << (11 * 2)))//LL_GPIO_Set...
(((I2C_GPIO_PORT->IDR)>>11)&0x01) /* global function define */ void i2c_sw_init(void); uint8_t i2c_sw_write_registers(uint8_t slave_addr, uint8_t register_addr, uint8_t *buff, uint8_t len); uint8_t i2c_sw_read_registers(uint8_t slave_addr, uint8_t register_addr, uin...