stm32/machine_i2c: Simplify ROM initialisation of static HW I2C objects.
This commit is contained in:
parent
ed2b6ea0a8
commit
ddc657658a
@ -48,26 +48,18 @@ typedef struct _machine_hard_i2c_obj_t {
|
||||
mp_hal_pin_obj_t sda;
|
||||
} machine_hard_i2c_obj_t;
|
||||
|
||||
STATIC const machine_hard_i2c_obj_t machine_hard_i2c_obj[] = {
|
||||
STATIC const machine_hard_i2c_obj_t machine_hard_i2c_obj[MICROPY_HW_MAX_I2C] = {
|
||||
#if defined(MICROPY_HW_I2C1_SCL)
|
||||
{{&machine_hard_i2c_type}, I2C1, MICROPY_HW_I2C1_SCL, MICROPY_HW_I2C1_SDA},
|
||||
#else
|
||||
{{NULL}, NULL, NULL, NULL},
|
||||
[0] = {{&machine_hard_i2c_type}, I2C1, MICROPY_HW_I2C1_SCL, MICROPY_HW_I2C1_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C2_SCL)
|
||||
{{&machine_hard_i2c_type}, I2C2, MICROPY_HW_I2C2_SCL, MICROPY_HW_I2C2_SDA},
|
||||
#else
|
||||
{{NULL}, NULL, NULL, NULL},
|
||||
[1] = {{&machine_hard_i2c_type}, I2C2, MICROPY_HW_I2C2_SCL, MICROPY_HW_I2C2_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C3_SCL)
|
||||
{{&machine_hard_i2c_type}, I2C3, MICROPY_HW_I2C3_SCL, MICROPY_HW_I2C3_SDA},
|
||||
#else
|
||||
{{NULL}, NULL, NULL, NULL},
|
||||
[2] = {{&machine_hard_i2c_type}, I2C3, MICROPY_HW_I2C3_SCL, MICROPY_HW_I2C3_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C4_SCL)
|
||||
{{&machine_hard_i2c_type}, I2C4, MICROPY_HW_I2C4_SCL, MICROPY_HW_I2C4_SDA},
|
||||
#else
|
||||
{{NULL}, NULL, NULL, NULL},
|
||||
[3] = {{&machine_hard_i2c_type}, I2C4, MICROPY_HW_I2C4_SCL, MICROPY_HW_I2C4_SDA},
|
||||
#endif
|
||||
};
|
||||
|
||||
@ -147,26 +139,18 @@ int machine_hard_i2c_transfer(mp_obj_base_t *self_in, uint16_t addr, size_t n, m
|
||||
|
||||
typedef mp_machine_soft_i2c_obj_t machine_hard_i2c_obj_t;
|
||||
|
||||
STATIC machine_hard_i2c_obj_t machine_hard_i2c_obj[] = {
|
||||
STATIC machine_hard_i2c_obj_t machine_hard_i2c_obj[MICROPY_HW_MAX_I2C] = {
|
||||
#if defined(MICROPY_HW_I2C1_SCL)
|
||||
{{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C1_SCL, MICROPY_HW_I2C1_SDA},
|
||||
#else
|
||||
{{NULL}, 0, 0, NULL, NULL},
|
||||
[0] = {{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C1_SCL, MICROPY_HW_I2C1_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C2_SCL)
|
||||
{{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C2_SCL, MICROPY_HW_I2C2_SDA},
|
||||
#else
|
||||
{{NULL}, 0, 0, NULL, NULL},
|
||||
[1] = {{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C2_SCL, MICROPY_HW_I2C2_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C3_SCL)
|
||||
{{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C3_SCL, MICROPY_HW_I2C3_SDA},
|
||||
#else
|
||||
{{NULL}, 0, 0, NULL, NULL},
|
||||
[2] = {{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C3_SCL, MICROPY_HW_I2C3_SDA},
|
||||
#endif
|
||||
#if defined(MICROPY_HW_I2C4_SCL)
|
||||
{{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C4_SCL, MICROPY_HW_I2C4_SDA},
|
||||
#else
|
||||
{{NULL}, 0, 0, NULL, NULL},
|
||||
[3] = {{&machine_hard_i2c_type}, 1, I2C_POLL_DEFAULT_TIMEOUT_US, MICROPY_HW_I2C4_SCL, MICROPY_HW_I2C4_SDA},
|
||||
#endif
|
||||
};
|
||||
|
||||
|
@ -180,6 +180,7 @@
|
||||
|
||||
#define MP_HAL_UNIQUE_ID_ADDRESS (0x1ff1e800)
|
||||
#define PYB_EXTI_NUM_VECTORS (24)
|
||||
#define MICROPY_HW_MAX_I2C (4)
|
||||
#define MICROPY_HW_MAX_TIMER (17)
|
||||
#define MICROPY_HW_MAX_UART (8)
|
||||
|
||||
@ -188,6 +189,7 @@
|
||||
|
||||
#define MP_HAL_UNIQUE_ID_ADDRESS (0x1fff7590)
|
||||
#define PYB_EXTI_NUM_VECTORS (23)
|
||||
#define MICROPY_HW_MAX_I2C (4)
|
||||
#define MICROPY_HW_MAX_TIMER (17)
|
||||
#define MICROPY_HW_MAX_UART (6)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user