Hallo mare_crisium,
vielen Dank fuer den neuen Lehrstoff.
)
Habe gleich ein paar Fragen dazu.
Im MACRO _FLANKEN_SICHERN hast Du "@0" verwendet und als Parameter beschrieben.
Code:
.macro _FLANKEN_SICHERN
bst r16,3
bld rTAST_FLANKEN,(@0)
.endmacro
..muss das "@0" in Klammern()?
oder muss nur der zu uebergebene Parameter "LED_TASTE_x" beim macro-Aufruf
_FLANKEN_SICHERN(LED_TASTE_x) in Klammern?
Eins muss ich aber noch gleich loswerden:
"Es ist schon eine sehr galante und uebersichtliche Loesung."
Im Uebergang von Seite 4 auf 5 ist mir eine Ungereimtheit aufgefallen.
Code:
SET_LOW_NIBBLE:
push r25
in r25,SREG
andi r16,0x0F ; oberes Nibble des Wertes in r16 (Quelle) löschen
andi r19,0x0F ; unteres Nibble in r19 (Ziel) ebenfalls löschen
or r19, r16 ; neuens oberes Nibble in r19 einfügen
out SREG,r25
pop r25
ret
muss es hier nicht so heissen?(eventuell ein Tippfehler?)
Code:
SET_LOW_NIBBLE:
push r25
in r25,SREG
andi r16,0x0F ; oberes Nibble des Wertes in r16 (Quelle) löschen
andi r19,0xF0 ; unteres Nibble in r19 (Ziel) ebenfalls löschen
or r19, r16 ; neuens oberes Nibble in r19 einfügen
out SREG,r25
pop r25
ret
An meinen Kommentaren muss ich auf jeden Fall noch arbeiten.
Im Nachhinein liest sich vieles nicht unbedingt verstaendlich - meine Kommentare beschreiben oft nur den eigentlichen Programmschritt.
Das ist fuer mich momentan natuerlich relevant, da mir viele Befehle neu und nicht gelaeufig sind.
Der Sinn der Befehlsfolge bleibt dann oft auf der Strecke...
>>> Verbesserungspotential
Lesezeichen