diff options
| author | Mike Causer <mcauser@gmail.com> | 2021-05-14 13:23:44 +1000 |
|---|---|---|
| committer | Damien George <damien@micropython.org> | 2021-05-14 22:22:13 +1000 |
| commit | 538b9a9be5e914eae302d31d8ddedec0f049482a (patch) | |
| tree | 9a0de7b139ffca890e4807007350e8d3380d7717 | |
| parent | 97fee47716627b06bfb11dbcc43f6a000d6e7257 (diff) | |
esp32/machine_i2c: Allow boards to configure I2C pins using new macros.
Following how SPI is configured (and how stm32 does it).
| -rw-r--r-- | ports/esp32/machine_i2c.c | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/ports/esp32/machine_i2c.c b/ports/esp32/machine_i2c.c index fd5180b8d..d9003f45b 100644 --- a/ports/esp32/machine_i2c.c +++ b/ports/esp32/machine_i2c.c @@ -32,14 +32,19 @@ #include "driver/i2c.h" -#define I2C_0_DEFAULT_SCL (GPIO_NUM_18) -#define I2C_0_DEFAULT_SDA (GPIO_NUM_19) +#ifndef MICROPY_HW_I2C0_SCL +#define MICROPY_HW_I2C0_SCL (GPIO_NUM_18) +#define MICROPY_HW_I2C0_SDA (GPIO_NUM_19) +#endif + +#ifndef MICROPY_HW_I2C1_SCL #if CONFIG_IDF_TARGET_ESP32 -#define I2C_1_DEFAULT_SCL (GPIO_NUM_25) -#define I2C_1_DEFAULT_SDA (GPIO_NUM_26) +#define MICROPY_HW_I2C1_SCL (GPIO_NUM_25) +#define MICROPY_HW_I2C1_SDA (GPIO_NUM_26) #else -#define I2C_1_DEFAULT_SCL (GPIO_NUM_9) -#define I2C_1_DEFAULT_SDA (GPIO_NUM_8) +#define MICROPY_HW_I2C1_SCL (GPIO_NUM_9) +#define MICROPY_HW_I2C1_SDA (GPIO_NUM_8) +#endif #endif #define I2C_DEFAULT_TIMEOUT_US (10000) // 10ms @@ -149,11 +154,11 @@ mp_obj_t machine_hw_i2c_make_new(const mp_obj_type_t *type, size_t n_args, size_ self->base.type = &machine_hw_i2c_type; self->port = i2c_id; if (self->port == I2C_NUM_0) { - self->scl = I2C_0_DEFAULT_SCL; - self->sda = I2C_0_DEFAULT_SDA; + self->scl = MICROPY_HW_I2C0_SCL; + self->sda = MICROPY_HW_I2C0_SDA; } else { - self->scl = I2C_1_DEFAULT_SCL; - self->sda = I2C_1_DEFAULT_SDA; + self->scl = MICROPY_HW_I2C1_SCL; + self->sda = MICROPY_HW_I2C1_SDA; } first_init = true; } |
