User manual
Entwicklung eines kleinen Programms  Seite: 39/152 
© Laser & Co. Solutions GmbH  Benutzerhandbuch SiSy 
;+----------------------------------------------------------------------------- 
;| Title : Assembler Grundgerüst für ATmega8 
;+----------------------------------------------------------------------------- 
;| Prozessor : ATmega8 
;| Takt : 3,6864 MHz 
;| Sprache : Assembler 
;+----------------------------------------------------------------------------- 
.include "AVR.H" 
;------------------------------------------------------------------------------ 
begin:  
rjmp  main      ; Power-on Reset 
reti        ; INT0 External Interrupt Request 0 
reti        ; INT1 External Interrupt Request 1 
reti        ; TIMER2 COMP Timer/Counter2 Compare Match 
reti        ; TIMER2 OVF Timer/Counter2 Overflow 
reti        ; TIMER1 CAPT Timer/Counter1 Capture Event 
reti        ; TIMER1 COMPA Timer/Counter1 Compare Match A 
reti        ; TIMER1 COMPB Timer/Counter1 Compare Match B 
reti        ; TIMER1 OVF Timer/Counter1 Overflow 
reti        ; TIMER0 OVF Timer/Counter0 Overflow 
reti        ; SPI, STC Serial Transfer Complete 
reti        ; USART, RXC USART, Rx Complete 
reti        ; USART, UDRE USART Data Register Empty 
reti        ; USART, TXC USART, Tx Complete 
reti        ; ADC ADC Conversion Complete 
reti        ; EE_RDY EEPROM Ready 
reti        ; ANA_COMP Analog Comparator 
    reti        ; TWI 2-wire Serial Interface 
reti        ; SPM_RDY Store Program Memory Ready 
;------------------------------------------------------------------------------ 
main:    ldi    r16,hi8(RAMEND)  ; Main program start 
out    SPH,r16    ; Set Stack Pointer to top of RAM 
ldi    r16,lo8(RAMEND) 
out    SPL,r16 
    ;Hier Init-Code eintragen. 
;------------------------------------------------------------------------------ 
mainloop: 
wdr 
    ;Hier den Quellcode eintragen. 
rjmp  mainloop
Quellcode in Assembler erstellen 
Das  Lauflicht  soll  über  die  LEDs  angezeigt  und  von  dem  Prozessorport  D  gesteuert 
werden. Die Realisierung erfolgt über je ein Bit im Register R18. Dieses wird mit dem 
Befehl Bit-Rotation nach rechts verschoben und an PORT D des Prozessors ausgege-
ben.  Auf  Grund  der  Prozessorgeschwindigkeit  muss  die  Ausgabe  des  Lauflichtes  für 
unser Auge verzögert werden. Geben Sie folgenden Quellcode ein bzw. ergänzen Sie 
die Programmvorlage! 










