21 #include "periph_cpu.h"
40 #elif CPU_FAM_STM32G0 || CPU_FAM_STM32C0
48 #if CPU_FAM_STM32F4 || CPU_FAM_STM32F2
49 .rcc_mask = RCC_APB1ENR_I2C1EN,
52 #elif CPU_FAM_STM32L4 || CPU_FAM_STM32WB || CPU_FAM_STM32G4
53 .rcc_mask = RCC_APB1ENR1_I2C1EN,
54 .rcc_sw_mask = RCC_CCIPR_I2C1SEL_1,
57 .rcc_mask = RCC_APB1ENR1_I2C1EN,
58 .rcc_sw_mask = RCC_CCIPR1_I2C1SEL_1,
60 #elif CPU_FAM_STM32G0 || CPU_FAM_STM32C0
61 .rcc_mask = RCC_APBENR1_I2C1EN,
62 .rcc_sw_mask = RCC_CCIPR_I2C1SEL_1,
65 .rcc_mask = RCC_APB1ENR_I2C1EN,
66 .rcc_sw_mask = RCC_DCKCFGR2_I2C1SEL_1,
68 #elif CPU_FAM_STM32F0 || CPU_FAM_STM32L0
69 .rcc_mask = RCC_APB1ENR_I2C1EN,
71 .rcc_sw_mask = RCC_CFGR3_I2C1SW,
78 #if CPU_FAM_STM32F4 || CPU_FAM_STM32F2
79 #define I2C_0_ISR isr_i2c1_ev
80 #elif CPU_FAM_STM32L4 || CPU_FAM_STM32F7 || CPU_FAM_STM32WB || CPU_FAM_STM32L5
81 #define I2C_0_ISR isr_i2c1_er
82 #elif CPU_FAM_STM32F0 || CPU_FAM_STM32L0 || CPU_FAM_STM32G0 || CPU_FAM_STM32C0
83 #define I2C_0_ISR isr_i2c1
86 #define I2C_NUMOF ARRAY_SIZE(i2c_config)
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
@ GPIO_AF1
use alternate function 1
@ GPIO_AF4
use alternate function 4
@ GPIO_AF6
use alternate function 6
@ APB1
Advanced Peripheral Bus 1
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
#define CLOCK_APB1
Half AHB clock.
I2C configuration structure.
TWI_t * dev
Pointer to hardware module registers.