Hallo
Ich möcht ein Programm schreiben das mit "Taster" "LED's" Ein und mit selber Taste Aus zu schalten ist.
Mein bis bisheriger versuch.
Code:
.include "m8def.inc"
;------------------------------------------------------
; Initialisierungen
;------------------------------------------------------
ldi r16, 0xFF ; lade Arbeitsregister r16 mit der Konstanten 0xFF
out DDRB, r16
ldi r16, 0x00
out DDRD, r16
ldi r19, 0x00 ; Lade register r19 mit der Konstanten 0x00
ldi r20, 0x00 ; Lade register r20 mit der Konstanten 0x00
ldi r17, 0x00 ; LED Wert
;------------------------------------------------------
; HAUPTSCHLEIFE
;------------------------------------------------------
Hauptschleife:
in r20, PIND ; an Port D anliegende Werte (Taster) nach r20 einlesen
cpse r20, r19 ; wen beide register gleich sind dan ueber springe den nechsten schrit
rjmp s ;Sprung nach s
rjmp Hauptschleife ;Sprung nach Hauptschleife
s:
eor r17, r20
out PORTB, r17
SprungXY1:
in r17, PIND ; an Port D anliegende Werte (Taster) nach r11 einlesen
cpse r20, r17 ; wen beide register gleich sind dan ueber springe den nechsten schrit
rjmp s2
rjmp Hauptschleife ;Sprung nach Hauptschleife
s2:
eor r20, r17
out PORTB, r20
rjmp Hauptschleife
;end
Ich weis nicht mehr weiter und habe noch keine Erfahrung in Assembler.
Ich Benutze ein STK500 und ein ATMega8.
Mit freundlichen Grüßen Ferdinand.
Lesezeichen