Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Wysłanie poleceń odebranych z pilota - podczerwień

marcinek29 22 Maj 2017 08:21 966 0
  • #1 22 Maj 2017 08:21
    marcinek29
    Poziom 10  

    Witam

    Mam spory problem z wysyłaniem poleceń odebranych z pilota klimatyzatora. Do odczytu używam Arduino Uno + vs1838, biblioteka IRremote.h, wgrany przykład IRrecvDumpV2.ino. Tak wygląda odczyt sygnału wysłanego z pilota:

    Code:
    Encoding : NEC
    
    Code : 9AA0060A (32 bits)
    Timing[73]:
    +8950, -4450 + 650, -1650 + 650, - 500 + 700, - 500
    + 650, -1650 + 650, -1600 + 700, - 550 + 650, -1600
    + 650, - 550 + 650, -1600 + 700, - 500 + 700, -1600
    + 650, - 550 + 650, - 550 + 650, - 500 + 700, - 550
    + 650, - 500 + 700, - 500 + 650, - 550 + 650, - 550
    + 700, - 500 + 650, - 550 + 650, -1650 + 650, -1600
    + 650, - 550 + 650, - 550 + 650, - 550 + 650, - 500
    + 700, - 550 + 650, -1600 + 650, - 550 + 650, -1650
    + 650, - 500 + 700, - 550 + 650, -1600 + 650, - 550
    + 650
    unsigned int rawData[73] = {8950,4450, 650,1650, 650,500, 700,500, 650,1650, 650,1600, 700,550, 650,1600, 650,550, 650,1600, 700,500, 700,1600, 650,550, 650,550, 650,500, 700,550, 650,500, 700,500, 650,550, 650,550, 700,500, 650,550, 650,1650, 650,1600, 650,550, 650,550, 650,550, 650,500, 700,550, 650,1600, 650,550, 650,1650, 650,500, 700,550, 650,1600, 650,550, 650}; // NEC 9AA0060A
    unsigned int data = 0x9AA0060A;


    Próbuje wysłać odebrany kod poleceniem
    Code:
    irsend.sendNEC(0x9AA0060A, 32);

    Otrzymuje coś takiego:
    Code:
    Encoding : NEC
    
    Code : 9AA0060A (32 bits)
    Timing[67]:
    +8950, -4450 + 600, -1650 + 600, - 550 + 600, - 500
    + 600, -1650 + 600, -1650 + 600, - 550 + 550, -1650
    + 600, - 550 + 600, -1600 + 650, - 500 + 600, -1650
    + 600, - 500 + 600, - 550 + 600, - 500 + 600, - 550
    + 600, - 500 + 600, - 500 + 600, - 500 + 650, - 500
    + 550, - 550 + 650, - 500 + 600, -1650 + 600, -1600
    + 600, - 550 + 600, - 500 + 650, - 500 + 600, - 550
    + 600, - 500 + 600, -1650 + 600, - 550 + 550, -1650
    + 600, - 550 + 600
    unsigned int rawData[67] = {8950,4450, 600,1650, 600,550, 600,500, 600,1650, 600,1650, 600,550, 550,1650, 600,550, 600,1600, 650,500, 600,1650, 600,500, 600,550, 600,500, 600,550, 600,500, 600,500, 600,500, 650,500, 550,550, 650,500, 600,1650, 600,1600, 600,550, 600,500, 650,500, 600,550, 600,500, 600,1650, 600,550, 550,1650, 600,550, 600}; // NEC 9AA0060A
    unsigned int data = 0x9AA0060A;


    RawData ma już inna długość i klimatyzator nie reaguje na wysłany kod. Proszę o pomoc i podpowiedz co robię nie tak.

    0 0