Բովանդակություն:
- Քայլ 1: Լե Մոնտաժ
- Քայլ 2: Le Code Arduino
- Քայլ 3. Infos Sur Les Codes Infra-Rouge
- Քայլ 4. Տեղեկատվություն Sur Codes RX433
Video: Récupérer Les Codes Infra-Rouge Et 433 մՀց ՝ 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
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.
On pourra donc ensuite, grâce à une autre montage, դեսպանորդի ծածկագրերի կոդերը և օդաչուի կարևորությունը:
Քայլ 1: Լե Մոնտաժ
Պարզ, un Arduino Nano, une diode réceptrice infra-rouge et un récepteur 433 mhz:
Քայլ 2: Le Code Arduino
// InfraRouge
#ներառում
int recvPin = 11; // կապել Arduino pour récepteur InfraRouge (TOSP4838)
IRrecv irrecv (recvPin);
// RX433
#ներառում
RCSwitch mySwitch = RCSwitch ();
decode_results results;
դատարկ կարգավորում ()
{
Serial.begin (9600);
irrecv.enableIRIn ();
irrecv.blink13 (ճշմարիտ); // allume la LED interne lors de l'envoie InfraRouge
mySwitch.enableReceive (0); // Récepteur RX433 (XY-MK-5V) sur pin 2 de Arduino Uno et Nano
}
// affichage des codes InfraRouge
դատարկ ircode (decode_results *արդյունքները)
{
// Panasonic
եթե (արդյունքներ-> decode_type == PANASONIC) {
Serial.print (արդյունքներ-> հասցե, HEX);
Serial.print (":");
}
Serial.print (արդյունքներ-> արժեք, HEX);
} // անվավեր
// afficahge des codes encodés
դատարկ կոդավորում (արդյունքների ապակոդավորում *արդյունքներ)
{
անջատիչ (արդյունքներ-> decode_type) {
կանխադրված:
գործ ԱՆՀԱՅՏ. Serial.print ("Inconnu"); ընդմիջում;
գործ NEC: Serial.print ("NEC"); ընդմիջում;
պատյան SONY: Serial.print ("SONY"); ընդմիջում;
գործ RC5: Serial.print ("RC5"); ընդմիջում;
գործ RC6: Serial.print ("RC6"); ընդմիջում;
գործ DISH: Serial.print ("DISH"); ընդմիջում;
գործ SHARP: Serial.print ("SHARP"); ընդմիջում;
գործ JVC: Serial.print ("JVC"); ընդմիջում;
գործ SANYO: Serial.print ("SANYO"); ընդմիջում;
գործ MITSUBISHI: Serial.print ("MITSUBISHI"); ընդմիջում;
գործ SAMSUNG: Serial.print ("SAMSUNG"); ընդմիջում;
գործ LG: Serial.print ("LG"); ընդմիջում;
գործ WHYNTER: Serial.print ("WHYNTER"); ընդմիջում;
գործ AIWA_RC_T501: Serial.print ("AIWA_RC_T501"); ընդմիջում;
գործ PANASONIC: Serial.print ("PANASONIC"); ընդմիջում;
գործ DENON: Serial.print ("Denon"); ընդմիջում;
}
}
// dump les résultats
void dumpInfo (decode_results *results)
{
// Ստուգեք, արդյոք բուֆերը լցվել է
եթե (արդյունքներ-> վարարում) {
Serial.println («IR կոդը չափազանց երկար է. Խմբագրել IRremoteInt.h- ը և ավելացնել RAWBUF»);
վերադարձ;
}
// Showույց տալ կոդավորման ստանդարտը
Serial.print ("Encodage:");
կոդավորում (արդյունքներ);
Serial.println ("");
// Showույց տալ կոդը և երկարությունը
Serial.print («Կոդ.»);
ծածկագիր (արդյունքներ);
Serial.print ("(");
Serial.print (արդյունքներ-> բիթեր, DEC);
Serial.println («բիթեր»);
}
// կառուցվածքը
void dumpRaw (decode_results *results)
{
// Տպել հումքի տվյալները
Serial.print ("ingամկետները [");
Serial.print (արդյունքներ-> rawlen-1, DEC);
Serial.println ("]:");
համար (int i = 1; i rawlen; i ++) {
անստորագիր երկար x = արդյունքներ-> rawbuf * USECPERTICK;
եթե (! (i & 1)) {// նույնիսկ
Serial.print ("-");
if (x <1000) Serial.print ("");
if (x <100) Serial.print ("");
Serial.print (x, DEC);
} այլ {// կենտ
Serial.print ("");
Serial.print ("+");
if (x <1000) Serial.print ("");
if (x <100) Serial.print ("");
Serial.print (x, DEC);
if (i rawlen-1) Serial.print (","); // ',' վերջինի համար անհրաժեշտ չէ
}
եթե (! (i % 8)) Serial.println ("");
}
Serial.println (""); // Նոր տող
}
//+=============================================================================
// Թափել decode_results կառուցվածքը:
//
void dumpCode (decode_results *results)
{
// Սկսեք հայտարարագիրը
Serial.print ("unsigned int"); // փոփոխական տեսակը
Serial.print ("rawData ["); // զանգվածի անուն
Serial.print (արդյունքներ-> rawlen - 1, DEC); // զանգվածի չափը
Serial.print ("] = {"); // Սկսեք հայտարարագիրը
// Թափել տվյալները
համար (int i = 1; i rawlen; i ++) {
Serial.print (արդյունքներ-> rawbuf * USECPERTICK, DEC);
if (i rawlen-1) Serial.print (","); // ',' վերջինի վրա անհրաժեշտ չէ
եթե (! (i & 1)) Serial.print ("");
}
// Ավարտել հայտարարագիրը
Serial.print ("};"); //
// Մեկնաբանություն
Serial.print ("//");
կոդավորում (արդյունքներ);
Serial.print ("");
ծածկագիր (արդյունքներ);
// Նոր տող
Serial.println ("");
// Այժմ թափեք «հայտնի» կոդերը
եթե (արդյունքներ-> decode_type! = ԱՆՀԱՅՏ) {
// Որոշ արձանագրություններ ունեն հասցե
եթե (արդյունքներ-> decode_type == PANASONIC) {
Serial.print ("unsigned int addr = 0x");
Serial.print (արդյունքներ-> հասցե, HEX);
Serial.println (";");
}
// Բոլոր արձանագրություններն ունեն տվյալներ
Serial.print ("unsigned int data = 0x");
Serial.print (արդյունքներ-> արժեք, HEX);
Serial.println (";");
}
}
դատարկ շրջան ()
/********************************************** *InfraRouge **************************************/
{
decode_results results; // Արդյունքները պահելու տեղ
if (irrecv.decode (& results))) {// Գրավեք IR կոդը
dumpInfo (և արդյունքներ); // Ելք արդյունքները
dumpRaw (& արդյունքներ); // Արդյունքները թողնել RAW ձևաչափով
dumpCode (& արդյունքներ); // Արդյունքները թողնել որպես սկզբնական կոդ
Serial.println (""); // Գրառումների միջև դատարկ գիծ
irrecv.resume (); // Պատրաստվեք հաջորդ արժեքին
}
/********************************************** *** RX433 ****************************************/
եթե (mySwitch.available ())
{
int արժեքը = mySwitch.getReceivedValue ();
Serial.println ("RX433");
եթե (արժեքը == 0) {
Serial.print («Codage inconnu»);
} այլ
{
Serial.print («Reçu»);
Serial.print (mySwitch.getReceivedValue ());
Serial.print (" /");
Serial.print (mySwitch.getReceivedBitlength ());
Serial.print («բիթ»);
Serial.print ("Protocole:");
Serial.println (mySwitch.getReceivedProtocol ());
}
mySwitch.resetAvailable ();
} // RX433
} // հանգույց
Քայլ 3. Infos Sur Les Codes Infra-Rouge
Il y a plusieurs նախադասություններ.
NEC: 32 բիթ (արձանագրության մանրամասները)
Sony: 12 կամ 20 բիթ (արձանագրության մանրամասներ) (Հասկանալով Sony IR հեռակառավարման կոդերը):
RC5: 12 բիթ (արձանագրության մանրամասները)
RC6: 20 կամ 36 բիթ (արձանագրության մանրամասները)
Pour Sony et RC5/6, chaque transmission doit être répétés 3 fois!
ՈTՇԱԴՐՈԹՅՈՆ. 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
Օրինակ ՝ (0x devant le code) և nombre de bits irsend.sendNEC (0xA55A38C7, 32);
Քայլ 4. Տեղեկատվություն Sur Codes RX433
L’envoie se fera avec la librairie RCSwitch.h
Օրինակ mySwitch.send (1975778, 24);
On peut facilement օդաչու avec cela des prises commandés.
Խորհուրդ ենք տալիս:
Ինչպես կատարել դիպչող դռան զանգ, մարմնի ջերմաստիճանի հայտնաբերում, GY-906, 433 ՄՀց Arduino- ի միջոցով. 3 քայլ
Ինչպես կատարել դիպչող դռան զանգ, մարմնի ջերմաստիճանի հայտնաբերում, GY-906, 433 ՄՀց Arduino- ի միջոցով. Այսօր մենք կանենք դիպչող դռան զանգ, այն կբացահայտի ձեր մարմնի ջերմաստիճանը: Այժմյան իրավիճակում շատ կարևոր է իմանալ, թե արդյոք մարմնի ջերմաստիճանը նորմայից բարձր է, երբ ինչ -որ մեկը ծաղրում է: Այս նախագիծը կարմիր լույս կներկայացնի, եթե հայտնաբերվի որևէ
DIY Walkie-Talkie ընդհանուր 433 ՄՀց ՌԴ մոդուլներով ՝ 4 քայլ
DIY Walkie-Talkie ընդհանուր 433 ՄՀց ՌԴ մոդուլներով. Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես օգտագործել ընդհանուր 433 ՄՀց ՌԴ մոդուլներ Ebay- ից ՝ գործառական Walkie-Talkie ստեղծելու համար: Դա նշանակում է, որ մենք կհամեմատենք տարբեր ՌԴ մոդուլներ, մի քիչ կսովորենք դասի d ուժեղացուցիչի մասին և վերջապես կկառուցենք Walkie-Talkie- ն:
Arduino Solar սնուցվող ջերմաստիճանի և խոնավության տվիչ ՝ որպես 433 մՀց Օրեգոն սենսոր ՝ 6 քայլ
Arduino Solar Powered Temperature and Humidity Sensor As 433mhz Oregon Sensor: Սա կառուցված է արևից սնվող ջերմաստիճանի և խոնավության տվիչի վրա: Սենսորը նմանակում է Օրեգոնի 433 մՀց սենսորին և տեսանելի է Telldus Net դարպասում: Այն, ինչ ձեզ հարկավոր է. 1x «10-LED» Արեգակնային էներգիայի շարժման տվիչ " Ebay- ից: Համոզվեք, որ գրված է 3.7 վ խմոր
ՌԴ 433MHZ ռադիոկառավարում ՝ օգտագործելով HT12D HT12E - Rf հեռակառավարման պատրաստում ՝ օգտագործելով HT12E և HT12D ՝ 433 մՀց հաճախությամբ ՝ 5 քայլ
ՌԴ 433MHZ ռադիոկառավարում ՝ օգտագործելով HT12D HT12E | Rf հեռակառավարման սարքի պատրաստում ՝ օգտագործելով HT12E և HT12D ՝ 433 մՀց հաճախականությամբ. HT12D ապակոդավորող IC: Այս հրահանգով դուք կարող եք ուղարկել և ստանալ տվյալներ ՝ օգտագործելով շատ էժան բաղադրիչներ, ինչպիսիք են ՝ HT
Costածրարժեք անլար տվիչների ցանց ՝ 433 ՄՀց հաճախականությամբ ՝ 5 քայլ (նկարներով)
Costածր գնով անլար տվիչների ցանց 433 ՄՀց հաճախականությամբ. Շատ շնորհակալություն Թերեզա Ռաջբային ՝ այս հոդվածում տեղ գտած հրապարակումներից ստացված տվյալները օգտագործելու համար: ցանցեր? Պարզ սահմանում