Lines Matching refs:I2C_Init
85 void I2C_Init(I2C0_Type* I2Cx, I2C_InitTypeDef* I2C_Init) { in I2C_Init() function
87 assert_param(I2C_Init); in I2C_Init()
88 assert_param(IS_I2C_MODE(I2C_Init->I2C_Mode)); in I2C_Init()
89 assert_param(IS_I2C_ADDR_WIDTH(I2C_Init->I2C_AddressWidth)); in I2C_Init()
99 I2Cx->CTRL_b.MODE = I2C_Init->I2C_Mode; in I2C_Init()
101 I2Cx->CTRL_b.MASTER_ADDR_WIDTH = I2C_Init->I2C_AddressWidth; in I2C_Init()
103 I2Cx->TAR_b.ADDR10 = i2c_NormalizeAddr(I2Cx, I2C_Init->I2C_Address); in I2C_Init()
106 I2Cx->CTRL_b.SLAVE_ADDR_WIDTH = I2C_Init->I2C_AddressWidth; in I2C_Init()
107 I2Cx->SAR_b.ADDR10 = i2c_NormalizeAddr(I2Cx, I2C_Init->I2C_Address); in I2C_Init()
115 if (I2C_Init->timing) { in I2C_Init()
117 i2c_GetClock(I2Cx) / I2C_Init->timing->I2C_Freq / 2; in I2C_Init()
119 i2c_GetClock(I2Cx) / I2C_Init->timing->I2C_Freq / 2; in I2C_Init()
120 I2Cx->SDA_SETUP_b.TSU_DAT = ((uint64_t)I2C_Init->timing->I2C_TsuDat) * in I2C_Init()
122 I2Cx->SDA_SETUP_b.TSETUP = ((uint64_t)I2C_Init->timing->I2C_Tsetup) * in I2C_Init()
124 I2Cx->TSU_STA_SETUP_b.TBUF = ((uint64_t)I2C_Init->timing->I2C_Tbuf) * in I2C_Init()
126 I2Cx->TSU_STA_SETUP_b.TSU_STA = ((uint64_t)I2C_Init->timing->I2C_TsuSta) * in I2C_Init()
128 I2Cx->TSU_STA_SETUP_b.SDA_FILTER_EN = I2C_Init->timing->I2C_SdaFilterEn; in I2C_Init()
129 I2Cx->TSU_STA_SETUP_b.SDA_FILTER_CNT = I2C_Init->timing->I2C_SdaFilterSpike; in I2C_Init()
130 I2Cx->TSU_STA_SETUP_b.SCL_FILTER_EN = I2C_Init->timing->I2C_SclFilterEn; in I2C_Init()
131 I2Cx->TSU_STA_SETUP_b.SCL_FILTER_CNT = I2C_Init->timing->I2C_SclFilterSpike; in I2C_Init()