;
;					ESEMPIO 2.2
;
;				Autore: Mikel Etxebarria
;			(c) Microsystems Engineering (Bilbao)
;
;Esempio per simulazione e/o MicroPIC Trainer
;
;Controllo dei leds RB0 e RB1 dall'interruttore RA0. RB0 riflette lo stato di RA0,
;RB1 il complemento di RA0
		
		List	p=16F84		;Tipo di processore
		include	"P16F84.INC"	;Definizioni di registri interni


		org	0x00		;Vettore di Reset
		goto	Inizio

		org	0x05		;Salva il vettore di interrupt

Inizio	        clrf 	PORTB		;Cancella i latch di uscita
		bsf	STATUS,RP0	;Seleziona banco 1
		clrf	TRISB		;Porta B si configura come uscita
		movlw	b'00011111'		
		movwf	TRISA		;Porta A si configura come entrata
		bcf	STATUS,RP0	;Seleziona banco 0

Loop		clrwdt			;Aggiorna il WDT timer
		btfsc	PORTA,0		;RA0 = 1 ??
		goto	RA0_es_1	;Sė
		bcf	PORTB,0		;No, disconnetti RB0
		bsf	PORTB,1		;Connetti RB1
		goto	Loop		;Loop senza fine 

RA0_es_1	bsf	PORTB,0		;Attiva RB0
		bcf	PORTB,1		;Attiva RB1
		goto	Loop		;Loop senza fine

		end			;Fine del programma principale
