Could any one tell my how clear ADDR flags in SR1 register. In documentation to library 3.0.1 we can read that: ''This bit is cleared by software reading SR1 register followed reading SR2'' I do something like this: I2C_GetFlagStatus(I2C1,I2C_FLAG_ADDR); (void)(I2C1->SR2); but after that flag is still on, and i can't get ''slave transmitter address matched'' again :[ Any sugestions? Regards, Maciek