Skip to main content
Visitor II
December 19, 2019
Solved

the code from st example

  • December 19, 2019
  • 1 reply
  • 1081 views
I2C_Cmd(sEE_I2C, ENABLE);
 /* sEE_I2C configuration after enabling it */
 I2C_Init(sEE_I2C, I2C_SPEED, I2C_SLAVE_ADDRESS7, I2C_Mode_I2C, I2C_DutyCycle_2,
 I2C_Ack_Enable, I2C_AcknowledgedAddress_7bit);

do the init order have some problem?

below one is common:

void Init(void)
 
 {
 
 I2C_DeInit(I2C1);
 I2C_Init(I2C1,IICSPEED, host_address, I2C_Mode_I2C,I2C_DutyCycle_2, I2C_Ack_Enable, I2C_AcknowledgedAddress_7bit);
 I2C_Cmd(I2C1,ENABLE);
 }

I2C_Cmd(sEE_I2C, ENABLE);
I2C_DeInit(sEE_I2C);
 /* sEE_I2C configuration after enabling it */
I2C_Init(sEE_I2C, I2C_SPEED, I2C_SLAVE_ADDRESS7, I2C_Mode_I2C, I2C_DutyCycle_2,
I2C_Ack_Enable, I2C_AcknowledgedAddress_7bit);

is there some bug like above

    This topic has been closed for replies.
    Best answer by Tesla DeLorean

    I think I'd have the Cmd before the DeInit.

    For ST's I2C the usual means to set up is Cmd then Init, issue with the pins and I2C peripheral getting stuck in BUSY state.

    1 reply

    Graduate II
    December 19, 2019

    I think I'd have the Cmd before the DeInit.

    For ST's I2C the usual means to set up is Cmd then Init, issue with the pins and I2C peripheral getting stuck in BUSY state.

    Visitor II
    December 20, 2019

    issue with the pins and I2C peripheral getting stuck in BUSY state?

    could you say more about it