my_timer_expiry_handler_raw(k_timer*)(struct k_timer *timer);
; arg struct k_timer *timer @ r0
0x00001584      push    {r4, r5, lr} ; main.cpp:51  ; my_timer_expiry_handler_raw(k_timer*)
0x00001586      sub     sp, 0xc
0x00001588      mov     r5, r0     ; arg1
0x0000158a      ldr     r3, [ledConfig] ; main.cpp:53 } ; 0x20000060
                                   ; loc.__data_start
0x0000158c      ldrb    r3, [r3]   ; 0x20000060
                                   ; loc.__data_start
0x0000158e      cbz     r3, 0x15be
0x00001590      movs    r2, 0      ; main.cpp:54  ; int value
0x00001592      ldr     r3, [ledConfig] ; 0x20000060
                                   ; loc.__data_start
0x00001594      ldrb.w  r1, [r3, 0x50] ; gpio_pin_t pin
0x00001598      mov     r4, r3
0x0000159a      ldr     r0, [r3, 0x4c] ; 0x200000ac
                                   ; obj.led_gpio_raw ; const struct device *port
0x0000159c      bl      gpio_pin_set ; gpio.h:1721 return gpio_pin_set(spec->port, spec->pin, value); ; sym.gpio_pin_set ; int gpio_pin_set(const struct device *port, gpio_pin_t pin, int value)
0x000015a0      ldr     r3, [r4, 0x20] ; main.cpp:55 K_TIMER_DEFINE(my_timer_float, my_timer_expiry_handler_float, NULL);
0x000015a2      cbz     r3, 0x15e0
0x000015a4      ldrd    r2, r3, [r4, 0x18] ; main.cpp:56  ; k_timeout_t period
0x000015a8      movs    r0, 0      ; kernel.h:528 static inline void k_timer_start(struct k_timer * timer, k_timeout_t duration, k_timeout_t period)
0x000015aa      movs    r1, 0      ; k_timeout_t duration
0x000015ac      strd    r0, r1, [sp]
0x000015b0      mov     r0, r5     ; struct k_timer *timer
0x000015b2      bl      dbg.z_impl_k_timer_start ; dbg.z_impl_k_timer_start ;  z_impl_k_timer_start(struct k_timer *timer, k_timeout_t duration, k_timeout_t period)
0x000015b6      ldr     r3, [r4, 0x20] ; main.cpp:57 K_TIMER_DEFINE(my_timer_raw, my_timer_expiry_handler_raw, NULL);
0x000015b8      subs    r3, 1
0x000015ba      str     r3, [r4, 0x20]
0x000015bc      b       0x15e0
0x000015be      movs    r2, 1      ; main.cpp:60 .on {}, ; int value
0x000015c0      ldr     r3, [ledConfig] ; 0x20000060
                                   ; loc.__data_start
0x000015c2      ldrb.w  r1, [r3, 0x50] ; gpio_pin_t pin
0x000015c6      mov     r4, r3
0x000015c8      ldr     r0, [r3, 0x4c] ; 0x200000ac
                                   ; obj.led_gpio_raw ; const struct device *port
0x000015ca      bl      gpio_pin_set ; gpio.h:1721 return gpio_pin_set(spec->port, spec->pin, value); ; sym.gpio_pin_set ; int gpio_pin_set(const struct device *port, gpio_pin_t pin, int value)
0x000015ce      ldrd    r2, r3, [r4, 8] ; main.cpp:61 .on_time = 0.1F, ; k_timeout_t period
0x000015d2      movs    r0, 0      ; kernel.h:528 static inline void k_timer_start(struct k_timer * timer, k_timeout_t duration, k_timeout_t period)
0x000015d4      movs    r1, 0      ; k_timeout_t duration
0x000015d6      strd    r0, r1, [sp]
0x000015da      mov     r0, r5     ; struct k_timer *timer
0x000015dc      bl      dbg.z_impl_k_timer_start ; dbg.z_impl_k_timer_start ;  z_impl_k_timer_start(struct k_timer *timer, k_timeout_t duration, k_timeout_t period)
0x000015e0      ldr     r2, [ledConfig] ; main.cpp:64 .off_time_raw = k_ticks_t(ledConfig.off_time * CONFIG_SYS_CLOCK_TICKS_PER_SEC / 1), ; 0x20000060
                                   ; loc.__data_start
0x000015e2      ldrb    r3, [r2]   ; 0x20000060
                                   ; loc.__data_start
0x000015e4      eor     r3, r3, 1
0x000015e8      strb    r3, [r2]
0x000015ea      add     sp, 0xc    ; main.cpp:65 .blinks_remain {},
0x000015ec      pop     {r4, r5, pc}
0x000015ee      nop
0x000015f0      lsls    r0, r4, 1