Innholdsfortegnelse:
- Trinn 1: Le Montage
- Trinn 2: Le Code Arduino
- Trinn 3: Informasjon Sur Les Codes Infra-Rouge
- Trinn 4: Informasjon Sur Codes RX433
Video: Récupérer Les Codes Infra-Rouge Et 433mhz: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Le but est d'afficher les codes des télécommandes du style commande de lampe, porte de garage et autre fonctionnant sous 433 mhz (RX433) mais aussi ceux des télécommandes infra-rouge de télévision au autre.
På pourra donc ensuite, grâce à une autre montage, envoyer ces codes and piloter n’importe quoi!
Trinn 1: Le Montage
Enkel, un Arduino Nano, une diode réceptrice infra-rouge et un récepteur 433 mhz.
Trinn 2: Le Code Arduino
// InfraRouge
#inkludere
int recvPin = 11; // pin Arduino pour récepteur InfraRouge (TOSP4838)
IRrecv irrecv (recvPin);
// RX433
#inkludere
RCSwitch mySwitch = RCSwitch ();
resultater for dekoderesultater;
ugyldig oppsett ()
{
Serial.begin (9600);
irrecv.enableIRIn ();
irrecv.blink13 (true); // allume la LED interne lors de l'envoie InfraRouge
mySwitch.enableReceive (0); // Récepteur RX433 (XY-MK-5V) på pin 2 av Arduino Uno et Nano
}
// affichage des codes InfraRouge
ugyldig irkode (dekoderesultater *resultater)
{
// Panasonic
if (results-> decode_type == PANASONIC) {
Serial.print (resultat-> adresse, HEX);
Serial.print (":");
}
Serial.print (resultater-> verdi, HEX);
}//tomrom
// afficahge des codes encodés
ugyldig koding (dekoderesultater *resultater)
{
bytte (resultater-> dekode_type) {
misligholde:
sak UKjent: Serial.print ("Inconnu"); gå i stykker;
case NEC: Serial.print ("NEC"); gå i stykker;
case SONY: Serial.print ("SONY"); gå i stykker;
sak RC5: Serial.print ("RC5"); gå i stykker;
sak RC6: Serial.print ("RC6"); gå i stykker;
case DISH: Serial.print ("DISH"); gå i stykker;
sak SHARP: Serial.print ("SHARP"); gå i stykker;
sak JVC: Serial.print ("JVC"); gå i stykker;
sak SANYO: Serial.print ("SANYO"); gå i stykker;
sak MITSUBISHI: Serial.print ("MITSUBISHI"); gå i stykker;
sak SAMSUNG: Serial.print ("SAMSUNG"); gå i stykker;
etui LG: Serial.print ("LG"); gå i stykker;
case WHYNTER: Serial.print ("WHYNTER"); gå i stykker;
sak AIWA_RC_T501: Serial.print ("AIWA_RC_T501"); gå i stykker;
sak PANASONIC: Serial.print ("PANASONIC"); gå i stykker;
sak DENON: Serial.print ("Denon"); gå i stykker;
}
}
// dump les résultats
void dumpInfo (dekoderesultater *resultater)
{
// Sjekk om bufferen overløp
if (resultater-> overløp) {
Serial.println ("IR -kode for lang. Rediger IRremoteInt.h og øk RAWBUF");
komme tilbake;
}
// Vis kodingsstandard
Serial.print ("Koding:");
koding (resultater);
Serial.println ("");
// Vis kode og lengde
Serial.print ("Kode:");
ircode (resultater);
Serial.print ("(");
Serial.print (resultater-> bits, DEC);
Serial.println ("bits)");
}
//struktur
void dumpRaw (dekode_resultater *resultater)
{
// Skriv ut rådata
Serial.print ("Timing [");
Serial.print (resultater-> rawlen-1, DEC);
Serial.println ("]:");
for (int i = 1; i rawlen; i ++) {
usignert lang x = resultater-> rawbuf * USECPERTICK;
if (! (i & 1)) {// even
Serial.print ("-");
hvis (x <1000) Serial.print ("");
hvis (x <100) Serial.print ("");
Serial.print (x, DEC);
} annet {// merkelig
Serial.print ("");
Serial.print ("+");
hvis (x <1000) Serial.print ("");
hvis (x <100) Serial.print ("");
Serial.print (x, DEC);
hvis (i rawlen-1) Serial.print (","); // ',' ikke nødvendig for den siste
}
if (! (i % 8)) Serial.println ("");
}
Serial.println (""); // Ny linje
}
//+=============================================================================
// Dump ut strukturen decode_results.
//
void dumpCode (decode_results *results)
{
// Start erklæringen
Serial.print ("unsigned int"); // variabel type
Serial.print ("rawData ["); // matrisenavn
Serial.print (resultater-> rawlen - 1, DEC); // matrisestørrelse
Serial.print ("] = {"); // Start erklæringen
// Dump data
for (int i = 1; i rawlen; i ++) {
Serial.print (resultater-> rawbuf * USECPERTICK, DEC);
hvis (i rawlen-1) Serial.print (","); // ',' ikke nødvendig på den siste
hvis (! (i & 1)) Serial.print ("");
}
// Avslutt erklæringen
Serial.print ("};"); //
// Kommentar
Serial.print ("//");
koding (resultater);
Serial.print ("");
ircode (resultater);
// Ny linje
Serial.println ("");
// Dump nå "kjente" koder
if (results-> decode_type! = UKjent) {
// Noen protokoller har en adresse
if (results-> decode_type == PANASONIC) {
Serial.print ("unsigned int addr = 0x");
Serial.print (resultat-> adresse, HEX);
Serial.println (";");
}
// Alle protokoller har data
Serial.print ("usignerte int data = 0x");
Serial.print (resultater-> verdi, HEX);
Serial.println (";");
}
}
hulrom ()
/************************************************ *InfraRouge ****************************************/
{
resultater for dekoderesultater; // Et sted å lagre resultatene
if (irrecv.decode (& results)) {// Ta en IR -kode
dumpInfo (& resultater); // Legg ut resultatene
dumpRaw (& results); // Legg ut resultatene i RAW -format
dumpCode (& resultater); // Skriv ut resultatene som kildekode
Serial.println (""); // Tom linje mellom oppføringer
irrecv.resume (); // Forbered deg på neste verdi
}
/************************************************ *** RX433 *******************************************/
hvis (mySwitch.available ())
{
int verdi = mySwitch.getReceivedValue ();
Serial.println ("RX433");
hvis (verdi == 0) {
Serial.print ("Codage inconnu");
} annet
{
Serial.print ("Reçu");
Serial.print (mySwitch.getReceivedValue ());
Serial.print (" /");
Serial.print (mySwitch.getReceivedBitlength ());
Serial.print ("bit");
Serial.print ("Protocole:");
Serial.println (mySwitch.getReceivedProtocol ());
}
mySwitch.resetAvailable ();
} // RX433
}//Løkke
Trinn 3: Informasjon Sur Les Codes Infra-Rouge
Il y a plusieurs protokoller:
NEC: 32 bits (protokolldetaljer)
Sony: 12 ou 20 bits (protokolldetaljer) (Forstå Sony IR -fjernkoder.)
RC5: 12 bits (protokolldetaljer)
RC6: 20 ou 36 bits (protokolldetaljer)
Hell Sony et RC5/6, chaque transmission doit être répétés 3 fois!
OBS: la librairie IRremote.h ne semble pas pouvoir envoyer des codes codés sur plus de 32bits. Les RC6, 36 doivent donc êtres envoyer en raw, qui prennent plus de taille mémoire.
L’envoie des codes se fera avec la librairie IRremote.h
Eksempel: (0x devant le code) et le nombre de bits irsend.sendNEC (0xA55A38C7, 32);
Trinn 4: Informasjon Sur Codes RX433
L’envoie se fera avec la librairie RCSwitch.h
Eksempel på mySwitch.send (1975778, 24);
På peut facilement piloter avec cela des prises commandés.
Anbefalt:
Hvordan lage en berøringsfri dørklokke, detektering av kroppstemperatur, GY-906, 433MHz ved bruk av Arduino: 3 trinn
Hvordan lage en berøringsfri dørklokke, kroppstemperaturregistrering, GY-906, 433MHz Ved hjelp av Arduino: I dag skal vi lage en berøringsfri dørklokke, den vil oppdage kroppstemperaturen din. I nå situasjon, er det veldig viktig å vite om noen kroppstemperatur er høyere enn normalt, når noen kocking.This prosjektet vil vise rødt lys hvis det oppdager noen
RF 433MHZ radiokontroll med HT12D HT12E - Lage en RF -fjernkontroll ved hjelp av HT12E og HT12D med 433mhz: 5 trinn
RF 433MHZ radiokontroll med HT12D HT12E | Lag en RF -fjernkontroll ved hjelp av HT12E og HT12D med 433mhz: I denne instruksen vil jeg vise deg hvordan du lager en RADIO -fjernkontroll ved hjelp av 433mhz sendermottakermodul med HT12E -kode & HT12D -dekoder IC. I denne instruksjonsboken kan du sende og motta data ved å bruke veldig veldig billige KOMPONENTER SOM: HT
INFRA RØD FJERNKONTROLLERT ROBOCAR SOM BRUKER AVR (ATMEGA32) MCU: 5 trinn
INFRA RØD FJERNKONTROLLERT ROBOCAR SOM BRUKER AVR (ATMEGA32) MCU: Det nåværende PROJEKT beskriver en design og implementering av en infrarød (IR) fjernstyrt RoboCar som kan brukes til forskjellige automatiserte ubemannede kontrollapplikasjoner. Jeg har designet fjernstyrt RoboCar (venstre-høyre/for-bak-bevegelse). T
RF -modul 433MHZ - Lag mottaker og sender fra 433MHZ RF -modul uten mikrokontroller: 5 trinn
RF -modul 433MHZ | Lag mottaker og sender fra 433MHZ RF -modul uten mikrokontroller: Vil du sende trådløse data? enkelt og uten mikrokontroller nødvendig? Her er vi, i denne instruksjonsfulle vil jeg vise deg min grunnleggende rf -sender og mottaker klar til bruk! I denne instruksjonsboken kan du sende og motta data ved hjelp av veldig ver
ESP-12 Infra Red Blaster: 7 trinn
ESP-12 Infra Red Blaster: Infra Red fjernkontroll blaster ved bruk av esp8266 Overfører fjernkontrollkoder mottatt fra web som støtter flere utdataenheter. Innebygd i enkel webside hovedsakelig for testing. Normal bruk er via POST -meldinger som kan komme fra nettsider eller fra IFTT