diff options
-rw-r--r-- | ports/stm32/machine_uart.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ports/stm32/machine_uart.c b/ports/stm32/machine_uart.c index 277ae67ef..9bd4c5e01 100644 --- a/ports/stm32/machine_uart.c +++ b/ports/stm32/machine_uart.c @@ -154,6 +154,12 @@ static void mp_machine_uart_init_helper(machine_uart_obj_t *self, size_t n_args, { MP_QSTR_read_buf_len, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 64} }, // legacy }; + if (self->is_enabled && n_args == 1 && kw_args->used == 0) { + // Only change the baudrate if that's all that is given. + uart_set_baudrate(self, mp_obj_get_int(pos_args[0])); + return; + } + // parse args struct { mp_arg_val_t baudrate, bits, parity, stop, flow, timeout, timeout_char, rxbuf, read_buf_len; |