bei meinem avr will der makro nicht richtig funktionieren. .macro zifferAnzeigen mov rToLcd, @0 ori rToLcd, 0b00110000 rcall writeLCD .endmacro .listmac .cseg .org 000000 rjmp Initial reti . . . zifferAnzeigen rTmp beim debuggen steht in rToLcd nicht der wert von rTmp. was für einen unterschied macht es, ob ich .listmac schreibe oder weglasse? Gruß Patrick
.listmac hat nur zur Folge, daß im .lst file alle anweisungen des macros im listfile mit ausgegeben werden.
Welchen Assembler benutzt Du denn? Bei den Assemblern, die ich kenne, musst Du: .macro zifferAnzeigen rToLcd shreiben. Woher sonst weiss der Assembler, was Du für rToLcd einsetzen willst? Gruß, Stefan
Hallo! @Stefan: Der Assembler weiss das in diesem Fall aus den Platzhaltern @0, @1 usw. für die dann die übergebenen Parameter beim Auruf des Makros eingesetzt werden. (AVRASM) Daniel
@Merle viel mehr code ist da nicht. wenn ich das ganze als subroutine aufrufe funktioniert es auch. das problem liegt in der makro umsetzung. @Stefan Daniel hat schon alles gesagt. Gruß Patrick
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.