Go Down

Topic: Emetteur IR (Read 3061 times) previous topic - next topic

Calvin-duino

Salut la communauté,

Un petit problème me fait encore face. J'arrive à recevoir un signal IR avec un récepteur mais, je n'arrive pas à comprendre et faire marcher mes émetteurs (diodes) IR.

Quelqu'un peut t'il m'aider ?
Mon récepteur IR me donne "F7C03F" en HEXADECIMAL.

BrUnO14200

Schéma?
C'est quoi les capteurs ?
Ma couveuse :https://forum.arduino.cc/index.php?topic=571843.0

Calvin-duino

Les capteurs ;

https://www.amazon.fr/gp/aw/d/B00EFOTJZE/ref=yo_ii_img?ie=UTF8&psc=1

Et les montages rien d'exceptionnel pour le recepteur qui marche très bien.

Et l'émetteur pour le moment j'ai ni montage ni  code.

Est ce que tu peux m'aider ?

petrusfr

Bonjour,

à priori, la même bibliothèque permet de recevoir ET émettre un signal infrarouge :

reception et émission infrarouge



Pierre

Calvin-duino

Code: [Select]


#Include <IRremote.h<

 IRsend irsend;

 void loop() {

     for (int i = 0; i < 3; i++) {
      irsend.sendNEC(0xFDB04F, 32);
      delay(40);
    }
  delay(5000);
}


Je ne comprends pas car, ce n'est pas un code entier


Code: [Select]
for (int i = 0; i < 3; i++) {
      irsend.sendNEC(0xFDB04F, 32);
      delay(40);

Et je ne comprends pas comment le message est envoyé et pourquoi c'est sendNEC ?

petrusfr

Re


le code est en entier et correspond à ceci :

Quote
Lorsque la LED pointe vers le téléviseur, le sketch suivant change de chaîne toutes les 5 secondes (le signal est envoyé 3 fois de suite pour chaque changement de chaîne).:
donc, on envoie le code Hexa FDB04F  3 fois d'affilée pour changer de chaîne , on attend 5 secondes et on recommence ...






pourquoi sendNec?

 
Quote
Voici ce qu'affiche le moniteur série lorsque j'appuie sur le bouton "channel up" de ma télécommande:

    Decoded NEC: FDB04F (32 bits)
    Raw (68): 4450 8950 -4500 550 -550 600 -500 600 -550 550 -550 600 -500 600 -550 550 -550 600 -500 600 -1650 600 -1650 550 -1700 600 -1650 550 -1650 550 -1700 600 -500 550 -1700 550 -1700 550 -550 550 -1700 550 -1700 550 -550 550 -550 550 -600 550 -550 550 -550 550 -1700 550 -550 550 -600 550 -1650 600 -1650 550 -1700 550 -1650 600

La librairie a reconnu le protocole NEC à 32 bits, et la commande se traduit pas la valeur hexadécimale "FDB04F".  C'est tout ce que j'ai besoin de savoir; puisque le protocole a été reconnu, je n'ai nullement besoin d'utiliser les données brutes qui apparaissent dans les lignes suivantes.
ci dessous, la liste des "commandes" connu par la bibliothèque IRREMOTE que j'ai trouvé :

Quote
#######################################
# Syntax Coloring Map For IRremote
#######################################

#######################################
# Datatypes (KEYWORD1)
#######################################

decode_results   KEYWORD1
IRrecv   KEYWORD1
IRsend   KEYWORD1

#######################################
# Methods and Functions (KEYWORD2)
#######################################

blink13   KEYWORD2
decode   KEYWORD2
enableIRIn   KEYWORD2
resume   KEYWORD2
enableIROut   KEYWORD2
sendNEC   KEYWORD2
sendSony   KEYWORD2
sendSanyo KEYWORD2
sendMitsubishi KEYWORD2
sendRaw   KEYWORD2
sendRC5   KEYWORD2
sendRC6   KEYWORD2
sendDISH KEYWORD2
sendSharp KEYWORD2
sendSharpRaw KEYWORD2
sendPanasonic KEYWORD2
sendJVC KEYWORD2

#######################################
# Constants (LITERAL1)
#######################################

NEC   LITERAL1
SONY   LITERAL1
SANYO LITERAL1
MITSUBISHI LITERAL1
RC5   LITERAL1
RC6   LITERAL1
DISH LITERAL1
SHARP LITERAL1
PANASONIC LITERAL1
JVC LITERAL1
LG LITERAL1
AIWA_RC_T501 LITERAL1
UNKNOWN   LITERAL1
REPEAT   LITERAL1
donc, si ton protocole est reconnu , c'est facile, sinon, c'est un peu plus compliqué mais il y a des exemples sur le net ....

te voila sur la bonne voie

Pierre




Calvin-duino

Code: [Select]
En plus de NEC, d'autres protocoles sont aussi reconnus par la librairie IRRemote: Sony SIRC, Philips RC5, Philips RC6.


Comment sait on lequel choisir ?

Go Up