Wechsel Laufrichtung ab der aktuellen Stelle

This commit is contained in:
2025-06-20 19:50:04 +02:00
parent a30bf50f67
commit 204e94d613
2 changed files with 15 additions and 17 deletions

View File

@@ -4,17 +4,19 @@
.macro left_to_right .macro left_to_right
in @0, PORTD in @0, PORTD
rol @0 clc
brcc PC+2
ldi @0, 0b00000001
out PORTD, @0
.endmacro
.macro right_to_left
in @0, PORTD
ror @0 ror @0
brcc PC+2 brcc PC+2
ldi @0, 0b10000000 ldi @0, 0b10000000
out PORTD, @0 out PORTD, @0
.endmacro .endmacro
.macro right_to_left
in @0, PORTD
clc
rol @0
brcc PC+2
ldi @0, 0b00000001
out PORTD, @0
.endmacro

View File

@@ -14,7 +14,7 @@
.def cur_direction = R20 .def cur_direction = R20
.equ L2R = 0x01 .equ L2R = 0x01
.equ R2L = 0b00000100 .equ R2L = 0x04
.equ RBTN_PRESSED = 0b00000100 .equ RBTN_PRESSED = 0b00000100
.equ LBTN_PRESSED = 0b00000001 .equ LBTN_PRESSED = 0b00000001
@@ -38,8 +38,8 @@ init:
; ldi setter, 0b11111010 ; ldi setter, 0b11111010
ser setter ser setter
out DDRB, setter ; PB0 und PB2 als Inputs definieren out DDRB, setter ; PB0 und PB2 als Inputs definieren
; ldi setter, 0b00000101 ldi setter, 0b00000101
; out PORTB, setter ; Interne Pullups aktivieren out PORTB, setter ; Interne Pullups aktivieren
clr setter clr setter
out PORTB, setter out PORTB, setter
@@ -94,16 +94,12 @@ overflow_handler:
; Laufrichtungswechsel ; Laufrichtungswechsel
;---- ;----
cpi btn_status, LBTN_PRESSED cpi btn_status, LBTN_PRESSED
brne PC+3 brne PC+2
ldi setter, 0b10000000
ldi cur_direction, L2R ldi cur_direction, L2R
cpi btn_status, RBTN_PRESSED cpi btn_status, RBTN_PRESSED
brne PC+3 brne PC+2
ldi setter, 0b00000001
ldi cur_direction, R2L ldi cur_direction, R2L
out PORTD, setter
;------ ;------
run_animation: run_animation: