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.

[Rozwiązano] [Bascom] Przechwytywanie sygnału z dowolnego pilota IR (nie RC5)

goreckidiy 14 Lut 2018 14:41 891 4
  • #1 14 Lut 2018 14:41
    goreckidiy
    Poziom 10  

    Witam,

    W niedzielę popełniłem projekt przełącznika schodowego sterowane przez RC5.
    Link
    Chciał bym przerobić program tak, bym mógł nauczyć urządzenie kodu z dowolnego pilota, nie zależnie od kodowania.

    Słaby ze mnie programista, więc bardzo proszę Was o pomoc.

    Na razie kod który ma przechwycić sygnał z pilota (Cyfrowego Polsatu) wygląda tak:
    Wydaje mi się że idę w złą stronę, no ale innego pomysłu nie mam.


    Kod: Bascom
    Zaloguj się, aby zobaczyć kod

    0 4
  • #2 14 Lut 2018 18:40
    xury
    Poziom 38  

    Zazwyczaj każda ramka ma tzw. prolog i epilog. By móc wykrywać dowolne kodowanie potrzebowałbyś znalezienia tych znaczników początku ramki i końca ramki. Musiałbyś poszukać opisów protokołów. Przydatny do tego byłby prosty czytnik stanów logicznych np podpinany do wejścia karty dźwiękowej.
    Może najpierw popróbuj odebrać kod RC5 bez używania wbudowanych funkcji w Bascom.
    Opis protokołu RC5 i kodowania Manchester jest dostępny w sieci.

    0
  • #3 14 Lut 2018 19:03
    3099750
    Użytkownik usunął konto  
  • #4 15 Lut 2018 16:40
    goreckidiy
    Poziom 10  

    Wystarczy... 😉 To może zacznę najpierw od nauki bascom a i za jakieś dwa lata będzie to śmigać 😀

    Dodano po 8 [godziny] 23 [minuty]:

    Panowie, znalazłem wczoraj kod, który działa na zasadzie „rejestratora” czasów, i zapisuje wyniki do Eeprom. Później je porównuje z odebranym kodem biorąc pod uwagę pewne odchylenia w czasie trwania impulsu.

    Program działa świetnie, i pozwoliłem sobie nawet przerobić go nieco pod siebie lecz nie mogę poradzić sobie z dwoma rzeczami:

    1. Pół nocy spędziłem na próbie dopisania drugiego kanału, i próbowałem już wszystkiego co przyszło mi na myśl– nie potrafię!
    2. Martwi mnie to że odczyt eepromu jest w pętli programu. Chciał bym by eeprom odczytywany był tylko przy uruchomieniu, a to co jest w pętli odbywało się w Ramie.


    Udało się. Zamykam temat.

    Kod: Bascom
    Zaloguj się, aby zobaczyć kod

    0
  • #5 15 Lut 2018 18:27
    goreckidiy
    Poziom 10  

    Wystarczy... 😉 To może zacznę najpierw od nauki bascom a i za jakieś dwa lata będzie to śmigać 😀

    Dodano po 8 [godziny] 23 [minuty]:

    Panowie, znalazłem wczoraj kod, który działa na zasadzie „rejestratora” czasów, i zapisuje wyniki do Eeprom. Później je porównuje z odebranym kodem biorąc pod uwagę pewne odchylenia w czasie trwania impulsu.

    Program działa świetnie, i pozwoliłem sobie nawet przerobić go nieco pod siebie lecz nie mogę poradzić sobie z dwoma rzeczami:

    1. Pół nocy spędziłem na próbie dopisania drugiego kanału, i próbowałem już wszystkiego co przyszło mi na myśl– nie potrafię!
    2. Martwi mnie to że odczyt eepromu jest w pętli programu. Chciał bym by eeprom odczytywany był tylko przy uruchomieniu, a to co jest w pętli odbywało się w Ramie.


    Udało się. Zamykam temat.

    Kod: Bascom
    Zaloguj się, aby zobaczyć kod


    Dodano po 1 [godziny] 46 [minuty]:

    Problem eepromu w pętli pozostaje, ale może nic się nie stanie...
    Wkońcu pierwotny autor projektu opublikował ten kod...

    Dodanie drugiego kanału to był koszmar, ale udało się sam niewiem do końca jak.
    Pozatym program działa świetnie. Od kilku godzin testuję jego stabilność.

    Pozdrawiam!

    0