Fonction réception seule:
#include <IRremote.h>
//Partie réception
int RECV_PIN = 11;
int LEDHIT = 8;
IRrecv irrecv(RECV_PIN);
decode_results results;
IRsend irsend;
void setup(){
Serial.begin(9600);
//Réception
pinMode(LEDHIT, OUTPUT);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
//Réception
if (irrecv.decode(&results)) {
//Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
unsigned long codeValue;
codeValue = results.value;
if (codeValue == 33441975){
digitalWrite (LEDHIT, HIGH);
delay (3000);
digitalWrite (LEDHIT, LOW);
}
}
}
Fonction émission:
/*
* IRremote: IRrecvDemo - demonstrates receiving IR codes with IRrecv
* An IR detector/demodulator must be connected to the input RECV_PIN.
* Version 0.1 July, 2009
* Copyright 2009 Ken Shirriff
* http://arcfn.com
*/
// Problémé Ir emiussion se met sur le pin 9... va comprendre... fin ca marche
#include <IRremote.h>
int RECV_PIN = 11;
int BOUTTON = 2;
int LEDE = 9;
int TRIGGER = 4;
int buttonState = 0;
IRrecv irrecv(RECV_PIN); //pin 3 emetteur
IRsend irsend;
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
pinMode(LEDE, OUTPUT);
pinMode(BOUTTON, OUTPUT);
pinMode (TRIGGER, INPUT);
}
void loop() {
buttonState = digitalRead(TRIGGER);
if (buttonState == HIGH) {
digitalWrite(BOUTTON, HIGH);
irsend.sendNEC(0x00FF30CF, 32);
delay (1000);
digitalWrite(BOUTTON, LOW);
delay(100);
}
}
Il doit y avoir quelques lignes de trop mais ça fonctionne indépendamment, je viens de refaire le test à l'instant.
Les deux en un et toujours le même problème.
#include <IRremote.h>
//Partie réception
int RECV_PIN = 11;
int LEDHIT = 8;
int BOUTTON = 2;
int LEDE = 9;
int TRIGGER = 4;
int buttonState = 0;
IRrecv irrecv(RECV_PIN);
decode_results results;
IRsend irsend;
void setup(){
Serial.begin(9600);
//Réception
pinMode(LEDHIT, OUTPUT);
irrecv.enableIRIn(); // Start the receiver
pinMode(LEDE, OUTPUT);
pinMode(BOUTTON, OUTPUT);
pinMode (TRIGGER, INPUT);
}
void loop() {
//Réception
if (irrecv.decode(&results)) {
//Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
unsigned long codeValue;
codeValue = results.value;
if (codeValue == 33441975){
digitalWrite (LEDHIT, HIGH);
delay (3000);
digitalWrite (LEDHIT, LOW);
}
}
//Tir
buttonState = digitalRead(TRIGGER);
if (buttonState == HIGH) {
digitalWrite(BOUTTON, HIGH);
irsend.sendNEC(0x00FF30CF, 32);
delay (1000);
digitalWrite(BOUTTON, LOW);
delay(100);
}
}

Uploaded with
ImageShack.us