From 5357bcfaafbc6e98c93f287085679108f2cd28e3 Mon Sep 17 00:00:00 2001 From: Erick Ahmed Date: Fri, 9 Jan 2026 13:48:26 +0100 Subject: [PATCH] Create tap tempo ISR branching logic --- src/bpm.inc | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/bpm.inc b/src/bpm.inc index e89b801..d49b5f7 100644 --- a/src/bpm.inc +++ b/src/bpm.inc @@ -2,3 +2,23 @@ ldi r20, \target_high ldi r19, \target_low .endm + +ticks_to_bpm: + ret + +tap_tempo_isr: + ; Timer not started yet (first button press after expiration) + lds r16, timer0_overflow_count + cp r16, r0 + breq start_timer + + ; Timer started + ; wait for next press + ; better to update at each press, unless expiration + rcall ticks_to_bpm + + reti + +start_timer: + rcall timer0_start + reti