summaryrefslogtreecommitdiff
path: root/ports/stm32/i2c.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2017-12-23 19:23:35 +1100
committerDamien George <damien.p.george@gmail.com>2017-12-23 19:24:24 +1100
commitb806889512a8c7f817ff23c7bf572c971acc9763 (patch)
treecbbc0272f2079f7063c4dbca715201785f14b947 /ports/stm32/i2c.c
parent008e1788e8a08261bb7c15976d18c946dd3b2259 (diff)
stm32/i2c: Support more I2C baudrates for F746, and more F7 MCUs.
Diffstat (limited to 'ports/stm32/i2c.c')
-rw-r--r--ports/stm32/i2c.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/ports/stm32/i2c.c b/ports/stm32/i2c.c
index 5bbc889c1..5a6edc329 100644
--- a/ports/stm32/i2c.c
+++ b/ports/stm32/i2c.c
@@ -136,11 +136,17 @@ const pyb_i2c_obj_t pyb_i2c_obj[] = {
// The value 0x40912732 was obtained from the DISCOVERY_I2Cx_TIMING constant
// defined in the STM32F7Cube file Drivers/BSP/STM32F746G-Discovery/stm32f7456g_discovery.h
-#define MICROPY_HW_I2C_BAUDRATE_TIMING {{100000, 0x40912732}}
-#define MICROPY_HW_I2C_BAUDRATE_DEFAULT (100000)
-#define MICROPY_HW_I2C_BAUDRATE_MAX (100000)
+#define MICROPY_HW_I2C_BAUDRATE_TIMING { \
+ {100000, 0x40912732}, \
+ {400000, 0x10911823}, \
+ {1000000, 0x00611116}, \
+ }
+#define MICROPY_HW_I2C_BAUDRATE_DEFAULT (400000)
+#define MICROPY_HW_I2C_BAUDRATE_MAX (1000000)
-#elif defined(STM32F767xx) || defined(STM32F769xx)
+#elif defined(STM32F722xx) || defined(STM32F723xx) \
+ || defined(STM32F732xx) || defined(STM32F733xx) \
+ || defined(STM32F767xx) || defined(STM32F769xx)
// These timing values are for f_I2CCLK=54MHz and are only approximate
#define MICROPY_HW_I2C_BAUDRATE_TIMING { \