![]() |
Tutorial für das Erlernen der Assemblersprache von AVR-Einchip-Prozessoren AT90Sxxxx von ATMEL anhand geeigneter praktischer Beispiele. Spezielles Software-Know-How |
HTML- Format | ASM- Format | Erläuterung zum Inhalt |
---|---|---|
LPM | LPM | Liest die Tasten und wandelt die Nummer der Taste über eine Liste im Programmspeicher in die Anzahl an LEDs um und beleuchtet diese. (Taste 0 = 8 Stück). Ein ziemlich unnützes Programm, aber es demonstriert neben dem LPM-Befehl auch das Rollen und Springen. |
JUMP | JUMP | Sprünge aus dem Stack heraus vornehmen. Die Unterprogrammaufrufe erfolgen nicht über den RCALL-Befehl, sondern über den Stack. D.h. zuerst wird die Rücksprungadresse auf dem Stack abgelegt, dann die Adresse des Unterprogrammes, das aufgerufen werden soll. Der Sprung und der Rücksprung erfolgen dann über den RET- Befehl. Etwas trickreiche Programmierkunst! |
MAC1 | MAC1 | Makros verwenden. Sinnloses Beispiel zum Erlernen, wie ein Makro in den Assembler-Quelltext gelangt und was beim Assemblieren passiert. |
MAC2 | MAC2 | Makros verwenden. Sprungziele in Makros nach innerhalb und ausserhalb des Makros anwenden. Sinnloses Testprogramm. |
MAC3 | MAC3 | Makros verwenden. Makro mit Übergabe eines Parameters an das Makro. Sinnloses Testprogramm zum Lernen. |
Loops | Zeitschleifen für Verzögerungen verwenden. Kurze, mittlere und sehr lange Zeitschleifen. |