/*************************************************************
 * Christophe Le Lann <totofwebcreation@gmail.com>
 * http://www.totofweb.ma.cx
 *
 * Utilisatino du PORTB en entrée et en sortie
 * => un BP sur RB0, si le BP est poussé, 5V sur RB0, on allume
 * une LED sur RB1
 *************************************************************/

/****************************************
 * Configuration du compilateur
 ****************************************/

// Quartz de 20MHz (utilisé pour les délais)
#pragma CLOCK_FREQ 20000000

/****************************************
 * Programme principal
 ****************************************/

void main() {
	disable_interrupt(GIE);				// Toutes les interruptions sont désactivées

	TRISB = 00000001b;					// Configuration du port B en mode sortie sauf RB0 en entrée
	clear_bit(PORTB,1);					// Mise à 0V de RB1

	while (1) {							// Boucle infinie
		if (PORTB & 0000001b) {			// Masquage pour ne retenir que RB0, voir cours de C et opérateurs binaires
			set_bit(PORTB,1);			// RB1 = 5V si RB0 = 5V
		} else {
			clear_bit(PORTB,1);			// RB1 = 0V sinon
		}
	}
}
