;
;					ESEMPIO 2.20
;
;				Autore: Mikel Etxebarria
;			(c) Microsystems Engineering (Bilbao)
;
;Esempio per simulazione e/o MicroPIC Trainer
;
;L'uso dello schermo LCD
;
;Questo esempio vuole introdurci all'utilizzo dello schermo LCD, per visualizzare
;differenti messaggi (p.e. Ciao).
;
;Va ricordato che le linee RA0-RA2 agiscono ora come uscita di segnali di controllo verso 
;l'LCD. Essendo connesse ai propri interruttori nel MicroPIC Trainer, questi devono
;essere permanentemente a livello logico "1" .

		List	p=16F84		;Tipo di processore
		include	"P16F84.INC"	;Definizioni di registri interni
                    		
Lcd_var		equ	0x0c		;Variabili (2) delle procedure di utilizzo dell'LCD

		org	0x00		;Vettore di Reset
		goto	Inizio
		org	0x05		;Salva vettore di interrupt

		include	"LCD_Cxx.inc"	;Include le procedure di utilizzo dell'LCD

Inizio	        clrf 	PORTB		;Cancella i latch di uscita
		bsf	STATUS,RP0	;Seleziona banco 1
		clrf	TRISB		;Porta B si configura come uscita
		movlw	b'00011000'		
		movwf	TRISA		;RA0-RA2 uscite, RA3-RA4 entrate				
		bcf	STATUS,RP0	;Seleziona banco 0	
		
		call	LCD_INI		;Sequenza di inizio dell'LCD
		movlw	b'00001111'
		call	LCD_REG		;Invia istruzione: LCD ON, Cursore ON e blink ON		
		movlw	'C'
		call	LCD_DATO	;Visualizza C
		movlw	'i'
		call	LCD_DATO	;Visualizza i
		movlw	'a'
		call	LCD_DATO	;Visualizza a
		movlw	'o'
		call	LCD_DATO	;Visualizza o
		movlw	' '
		call	LCD_DATO	;Visualizza bianco
		

Loop		sleep			;Messa in Standby
		goto	Loop		;Ritorno in standby

		end			;Fine del programma principale

