X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fcortex-m3%2Fio%2Fstm32_i2c.h;h=a7e375fb7df70599186a3481ee7aac8a2719612b;hb=489b283ff1f2f430ec47cbd2e1fc477aa033ce98;hp=0ac306947c8f3346d8a76f4009b2b9e413f0935a;hpb=f27a8a6bf27047bf0e173cfa448e1694b80a9fb5;p=bertos.git diff --git a/bertos/cpu/cortex-m3/io/stm32_i2c.h b/bertos/cpu/cortex-m3/io/stm32_i2c.h index 0ac30694..a7e375fb 100644 --- a/bertos/cpu/cortex-m3/io/stm32_i2c.h +++ b/bertos/cpu/cortex-m3/io/stm32_i2c.h @@ -239,9 +239,19 @@ /* I2C CCR mask */ #define CCR_CCR_SET ((uint16_t)0x0FFF) + +/* I2C CR1 */ +#define CR1_POS_SET ((uint16_t)0x800) +#define CR1_POS_RESET (~CR1_POS_SET) + /* I2C Status */ +#define SR1_PECERR 12 +#define SR1_OVR 11 +#define SR1_AF 10 +#define SR1_ARLO 9 +#define SR1_BERR 8 #define SR1_TXE 7 -#define SR1_RXE 6 +#define SR1_RXNE 6 #define SR1_ADDR 1 #define SR1_BTF 2 #define SR1_SB 0 @@ -251,7 +261,11 @@ #define SR2_MSL 0 - +#define SR1_ERR_MASK (BV(SR1_PECERR) | \ + BV(SR1_OVR) | \ + BV(SR1_AF) | \ + BV(SR1_ARLO) | \ + BV(SR1_BERR)) struct stm32_i2c {