Bonjour,
Dans le cadre de mes études je dois réaliser plusieurs projets en m'aidant des montages du livret issu du kit débutant. Un des projet est le contrôle d'un afficheur 7 segments via la télécommande IR. Pour cela je devais m'aider des montages 4 et 12 du livret, cependant je ne parviens pas à faire un code qui fonctionne. Je vous laisse le dernier code que j'ai essayé, celui-ci ne fonctionne pas donc si vous avez des solutions ou suggestions, je suis preneuse !
Le but du code est d'afficher, sur le 7 segments, le chiffre qui a été appuyé sur la télécommande.
#include"Adafruit_NECremote.h"
#define brocheIR 7
Adafruit_NECremote remote (brocheIR);
int donnee = 2;
int latch = 3;
int clock = 4;
int chiffre;
byte dec_digits[] = {0b00000011,0b10011111,0b00100101,0b00001101,0b10011001,0b01001001,0b01000001,0b00011111, 0b00000000, 0b00001001};
void setup(void) {
Serial.begin(115200);
Serial.println("Pret a recevoir");
pinMode(latch, OUTPUT);
pinMode(clock, OUTPUT);
pinMode(donnee, OUTPUT);
chiffre = 5;
}
int derniercode = -1;
void loop(void) {
int c = remote.listen (5);
if (c=0){
Serial.println ("0");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=1){
Serial.println ("1");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=2){
Serial.println ("2");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=3){
Serial.println ("3");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=4){
Serial.println ("4");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=5){
Serial.println ("5");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=6){
Serial.println ("6");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=7){
Serial.println ("7");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=8){
Serial.println ("8");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
if (c=9){
Serial.println ("9");
derniercode = c;
chiffre = c;
digitalWrite(latch,LOW);
shiftOut(donnee,clock,MSBFIRST,dec_digits[chiffre]);
digitalWrite(latch, HIGH);
delay(300);
}
}







