#include #include int main(void) { int switchPin=0; int ledPin =7; if(wiringPiSetup()==-1) {return 0;} //le port GPIO du bouton est configuré en lecture pinMode(switchPin,INPUT); //le port GPIO de la LED est configuré en ecriture pinMode(ledPin,OUTPUT); int button=0; int ledState=0;//état initial de la LED digitalWrite(ledPin,ledState);//on eteint la LED au départ while(1) { //on lit la valeur de la broche GPIO button=digitalRead(switchPin); if(button==0)//Si un appui sur le bouton est détecté { //on affiche un message printf("button pressed!\n"); if(ledState==0) {ledState=1;} else {ledState=0;} digitalWrite(ledPin,ledState);//on applique le nouvel état de la LED //cette boucle permet de gerer un appui continu while(button==0) { //on relit la valeur à chaque fois button=digitalRead(switchPin); delay(20);//et on attend 20ms } } delay(20);//on attend 20ms entre chaque lecture. } return 0; }