add functions to remotely set LED timing.

This commit is contained in:
Martin Preuss
2025-05-14 01:50:59 +02:00
parent bc54f5bda1
commit 92bcd366cb
2 changed files with 71 additions and 14 deletions

View File

@@ -78,17 +78,13 @@ LedSimple_Every100ms_setTimer:
; @routine LedSimple_SetDefaultTiming @global
;
; Set default timing for LED.
; @clobbers r16
; @clobbers R18, R19
;
LedSimple_SetDefaultTiming:
ldi r16, LED_SIMPLE_ONTIME
sts ledSimpleOnTime, r16
sts ledSimpleTimer, r16
ldi r16, LED_SIMPLE_OFFTIME
sts ledSimpleOffTime, r16
cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on
ret
ldi r18, LED_SIMPLE_ONTIME
ldi r19, LED_SIMPLE_OFFTIME
rjmp LedSimple_SetTiming
; @end
@@ -97,15 +93,30 @@ LedSimple_SetDefaultTiming:
; @routine LedSimple_SetFastTiming @global
;
; Set fast blinking timing for LED. Switch LED on.
; @clobbers r16
; @clobbers R18, R19
;
LedSimple_SetFastTiming:
ldi r16, 5
sts ledSimpleOnTime, r16
sts ledSimpleTimer, r16
ldi r16, 3
sts ledSimpleOffTime, r16
ldi r18, 5
ldi r19, 3
rjmp LedSimple_SetTiming
; @end
; ---------------------------------------------------------------------------
; @routine LedSimple_SetTiming @global
;
; Set blinking timing for LED. Switch LED on.
; @param r18 ontime (in 1/10s)
; @param r19 offtime (in 1/10s)
; @clobbers none
;
LedSimple_SetTiming:
sts ledSimpleOnTime, r18
sts ledSimpleTimer, r18
sts ledSimpleOffTime, r19
cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on
ret
; @end