From a36e662927c04c9df355622a29e9cdaca9afed9d Mon Sep 17 00:00:00 2001 From: robert-hh Date: Sat, 17 Jun 2023 16:07:58 +0200 Subject: [PATCH] rp2: Fix the display of timer properties. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Showing the period as either ms for periods > 1 Minute, or µs if smaller. Signed-off-by: robert-hh --- ports/rp2/machine_timer.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ports/rp2/machine_timer.c b/ports/rp2/machine_timer.c index e4fbb03af437c..3eb481ab1b7f9 100644 --- a/ports/rp2/machine_timer.c +++ b/ports/rp2/machine_timer.c @@ -57,7 +57,12 @@ STATIC int64_t alarm_callback(alarm_id_t id, void *user_data) { STATIC void machine_timer_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) { machine_timer_obj_t *self = MP_OBJ_TO_PTR(self_in); qstr mode = self->mode == TIMER_MODE_ONE_SHOT ? MP_QSTR_ONE_SHOT : MP_QSTR_PERIODIC; - mp_printf(print, "Timer(mode=%q, period=%u, tick_hz=1000000)", mode, self->delta_us); + mp_printf(print, "Timer(mode=%q, tick_hz=", mode); + if (self->delta_us < 60000000) { + mp_printf(print, "1000000, period=%u)", (uint32_t)self->delta_us); + } else { + mp_printf(print, "1000, period=%u)", (uint32_t)(self->delta_us / 1000)); + } } STATIC mp_obj_t machine_timer_init_helper(machine_timer_obj_t *self, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {