;********************************************************************************************** ;* Name: LCD_Str ;* ;* Benötigte SR.: LCD_CHR ;* Übergabe Register: Z-Register für Anfangsadresse des Textes ;* ;* Beschreib: Gibt die im RAM gespeicherten Zeichen auf das LCD ;* Display aus. Das Startzeichen wird durch einen ;* Zeiger angegeben der im Z register gespeichert wird. ;* ;* Abbruchcode: $A0 ;* ;********************************************************************************************** LCD_STR: push daten ;mpr auf den Stack sichern ldi ZH,high(Text) ;Text Ausgeben ldi ZL,low(Text) lsl ZL rol ZH ;Z-Ptr um 1 Pos nach Links verschieben LCD_Str1: lpm mov daten,r0 cpi daten,0xA0 breq LCD_Str_Exit ;Wenn $A0 steht wird das Auslesen beendet rcall zeichen ;sonst Wert ausgeben adiw ZL,1 ;Zeiger um eins erhöhen rjmp LCD_Str1 LCD_Str_Exit: pop daten ;mpr vom Stack Laden ret .org 0x400 Text: .byte "Ruhepuls: ",0xA0