int a = 123; // En binaire: 0111 1011 // a & 1 => 01111011 & 00000001 => 1 // a & 10 => 01111011 & 00000010 => 1 // a & 100 => 01111011 & 00000100 => 0 // a & 1000 => 01111011 & 00001000 => 1 // a & 10000 => 01111011 & 00010000 => 1 // a & 100000 => 01111011 & 00100000 => 1 // a & 1000000 => 01111011 & 01000000 => 1 // a & 10000000 => 01111011 & 10000000 => 0 // 1 << 0 => 1 // 1 << 1 => 10 // 1 << 2 => 100 // etc... // Pour afficher le nombre binaire en partant de la fin, on ferait: for (int i = 15; i > 0; --i) std::cout << a & (1 << i) << std::endl;
Améliorer votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
/*
Reception infrarouge
Je ne crois pas faire rentrer plusieurs dans 1 seul vu que src est un tableau ?!
char c;=> 1 caractère char tab[40] => 40 caractères c = tab; // Invalide. On essaie de mettre plusieurs caractères dans un seul. // De même strcpy(tab, c); // Invalide, car strcpy veut: strcpy(plusieurs, plusieurs) et on lui donne: strcpy(plusieurs, un seul).
for (int i = 0; i < 16; ++i) { Serial.print(decode_ir.value & (1 << i)); } Serial.println("---------------");
Serial.println(decode_ir.value, HEX);
Améliorer votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
void httpRequest (char txt) {
retourServeur[0] = "" ;
retourServeur[1] = "" ;
retourServeur[2] = "" ;
IPAddress server(192,168,1,122);
Serial.println("\nConnection au serveur...");
// if you get a connection, report back via serial:
if (client.connect(server, 80)) {
Serial.println("connecte au serveur");
// Make a HTTP request:
client.println("GET /BIN.php?code=" + txt + " HTTP/1.1");
client.println("Host: 192.168.1.122");
client.println("Connection: close");
client.println();
}
}
void loop(void) {
if (reception_ir.decode(&decode_ir)) {
Serial.println(decode_ir.value, BIN);
Serial.println("---------------");
httpRequest(decode_ir.value, BIN);
reception_ir.resume();
}
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question