.include "m169def.inc" .org 0 ldi r16, low(RAMEND) out SPL, r16 ldi r16, high(RAMEND) out SPH, r16 call init_disp ; ldi r16, 0x01 ; sts LCDDR0, r16 ; rcall show_6 ldi r16, 'H' ldi r18, 0 rcall show_char ldi r16, 'E' ldi r18, 1 rcall show_char ldi r16, 'L' ldi r18, 2 rcall show_char ldi r16, 'L' ldi r18, 3 rcall show_char ldi r16, 'O' ldi r18, 4 rcall show_char ldi r16, '_' ldi r18, 5 rcall show_char end: rjmp end init_disp: ldi r16, 0xB7 sts LCDCRB, r16 ldi r16, 0x10 sts LCDFRR, r16 ldi r16, 0x0F sts LCDCCR, r16 ldi r16, 0x80 sts LCDCRA, r16 ret show_6: ldi r16, 0x11 sts LCDDR0, r16 ldi r16, 0x44 sts LCDDR0+5, r16 ldi r16, 0xff sts LCDDR0+10, r16 ldi r16, 0x11 sts LCDDR0+15, r16 ret show_char: ldi ZL, low(znaky<<1) ldi ZH, high(znaky<<1) subi r16, 42 clr r17 lsl r16 lsl r16 ;rol r17 add ZL, r16 ;clr r16 adc ZH, r17 mov r17, r18 lsr r17 ldi YL, LCDDR0 add YL, r17 clr YH lpm r16, Z+ sbrc r18, 0 swap r16 ld r17, Y or r16, r17 st Y, r16 lpm r16, Z+ sbrc r18, 0 swap r16 ldd r17, Y+5 or r16, r17 std Y+5, r16 lpm r16, Z+ sbrc r18, 0 swap r16 ldd r17, Y+10 or r16, r17 std Y+10, r16 lpm r16, Z+ sbrc r18, 0 swap r16 ldd r17, Y+15 or r16, r17 std Y+15, r16 ret .include "znaky.inc"