.include "m8def.inc"
.def temp1 = r16
.def temp2 = r17
.def temp3 = r18
ldi temp1, LOW(RAMEND) ; LOW-Byte der obersten RAM-Adresse
out SPL, temp1
ldi temp1, HIGH(RAMEND) ; HIGH-Byte der obersten RAM-Adresse
out SPH, temp1
rcall lcd_init ; Display initialisieren
rcall lcd_clear ; Display löschen
ldi ZL, LOW(text*2) ; Adresse des Strings in den
ldi ZH, HIGH(text*2) ; Z-Pointer laden
ldi r19, 'c'
ldi r20, 10
loop1: st Z+, r19
inc r19
dec r20
cpi r20, 0
brge loop1
ldi XL, LOW(text*2) ; Adresse des Strings in den
ldi XH, HIGH(text*2) ; Z-Pointer laden
ldi r19, 'a'
mov r0, r19
st X+, r0
st X+, r0
st X+, r0
st X+, r0
st X+, r0
st X+, r0
st X+, r0
st X+, r0
ldi r19, 0
mov r0, r19
st X+, r0
ldi ZL, LOW(text*2) ; Adresse des Strings in den
ldi ZH, HIGH(text*2) ; Z-Pointer laden
rcall lcd_flash_string ; Unterprogramm gibt String aus der
; durch den Z-Pointer adressiert wird
loop:
rjmp loop
.DSEG
text: .BYTE 30 ; Stringkonstante, durch eine 0
; abgeschlossen
.include "lcd-routines.asm" ; LCD Funktionen