Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 13 lut 2026, o 01:12


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
 Tytuł: SONY_RM-934
PostNapisane: 30 lis 2013, o 18:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

Właśnie zabrałem się za programowanie odbioru kodów w podczerwieni( blue book ) i mam problem gdyż nie mam pilota w standardzie RC5, a niestety w SONY_RM-934

http://lirc.sourceforge.net/remotes/sony/RM-934

I nie jestem do końca pewien jak wygląda jego ramka przesyłu danych.
Z informacji z tekstu opisującej standard transmisji wywnioskowałem tylko jak wyglądają zera i jedynki oraz haeder oraz prtail.

Jeżeli dobrze myślę to może to wyglądać w taki sposób : HEADER potem 8 bitów danych i ptrail

nie wiem czy to ma sens bitu toogle nie ma (chyba).

Liczę na poprawienie moich domysłów

Z góry dzięki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 18:49 
Offline
Użytkownik

Dołączył(a): 24 kwi 2013
Posty: 454
Pomógł: 30

To chyba zwykły SIRC: http://www.sbprojects.com/knowledge/ir/sirc.php
i toggle tam niema. Tylko te 11bitów jakieś nietypowe.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 19:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

to jest wypowiedź z elektrody:

"z opisu twojego pilota wynika, że jest to kodowanie typu SPACE i nie jest wysyłany żaden nagłówek (header). Natomiast pilot generuje tylko dwa rodzaje kodów o nazwach S i 2S, ktróre oznaczają, że jeśli wysyłamy kod S to oznacza, że trzeba wysłać porpostu zero zgodnie z podanymi czasami, a kod 2S to wysłanie jedynki.

aby wysłać ZERO musisz wygenerować (jak już podpowiadał kolega august) dwa impulsy. Pierwszy o długości 0,55ms (zero) i potem drugi o długości 7,143ms (jeden)

... aby wysłać JEDYNKĘ musisz wygenerować pierwszy impuls o długości 0,55ms (zero) a następnie drugi o długości 5,25ms (jeden).

parametr "ptrail 550" oznacza chyba (ale tu może się mylę), że na zakończenie wysyłasz impuls 0,55ms (zero) "

i to by się zgadzało z tym co powiedziałeś

popróbuję i zobaczę

Dzięki



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 20:48 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

gronoarona napisał(a):
nie wiem czy to ma sens bitu toogle nie ma (chyba).


dobrze myślisz - nie ma bitu toggle ... ale można sobie dorobić ;) bo się BAAAARDZO przydaje ten mały bicik ;) ... jak ?

w razie czego sporo opisałem tutaj - w zasadzie wszystko o tym jak pisać sobie obsługę pilotów na podstawie tej stronki którą podałeś

------------------

ale podpowiadając - masz rację, że jest Header a na końcu ptrail, ale niestety bitów jest więcej - teraz sam nie mam książki pod ręką i z głowy nie pamiętam ... ale jest też paczka bitów odpowiedzialnych za adres i komendę

a jako ciekawostkę już na koniec powiem ci (opisuję to też w książce i chyba nawet ten sam model pilota) ... że za każdym kliknięciem klawisza wysyła on dwie ramki a nie jedną - to też trzeba mieć na uwadze

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 21:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

Obecnie chcę to uruchomić żeby działało, ale nie chcę używać Twojego programu bo jutro już nie będę pamiętał jak to napisać ;p

Więc czy dobrze myślę:
Mam badać jak długo trwają stany wysokie i niskie dla całej ramki
Header 2,499us + 0,517us potem 7 bitów comand + 5 bitów adress i ptrail
Jedno wciśnięcie przycisku wysyłane dwie ramki, rozumiem ze są one takie same i służą do porównania?

Procesor taktuję 8MHz więc preskaler ustawiając na 2 będę miał możliwość badać stany co 0,25us ( dobrze?)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 21:17 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

gronoarona napisał(a):
Header 2,499us + 0,517us potem 7 bitów comand + 5 bitów adress i ptrail


no dokładnie coś w tym stylu - dokładnie .... (tylko mówię nie mam teraz niczego pod ręką żeby potwierdzić w szczegółach ale jeśli będziesz się trzymał tych czasów z lirc.org to ci spokojnie wyjdzie

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 30 lis 2013, o 22:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

ok jutro powalczę



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 00:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

Wracając do tematu mam jeszcze kilka niejasności.

Biorąc pod że programuję odbiornik więc oczekuję na odwrotne stany na wejściu ICP niż są wysyłane z pilota, więc np. początek ramki rozpoznam poprzez oczekiwanie na opadające zbocze.

Potem zaczyna się inkrementować rejestr ICR aż do rosnącego zbocza.

Rejestr ICR jest inkrementowany co takt procesora więc dla procesora taktowanego 8MHz jest inkrementowany z taką właśnie częstotliwością.

Po otrzymaniu zbocza rosnącego odczytuję wartość ICP następnie zapisuję wartość ICR i sprawdzam czy czas otrzymany zgadza się z specyfikacją. Jeżeli tak odczytuję kolejne bity jeżeli nie dalej czekam na header.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 06:40 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

gronoarona napisał(a):
Rejestr ICR jest inkrementowany co takt procesora więc dla procesora taktowanego 8MHz jest inkrementowany z taką właśnie częstotliwością


ale co to wg ciebie znaczy ? no to przecież zależy jakiego preskalera użyjesz i jakie czasy chcesz mierzyć

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 12:17 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

Preskaler na 1 więc ICR zwiększany co takt.
A co do czasów to chcę mierzyć tylko czasy stanów niskich bo tylko one się zmieniają więc wydaje mi się że nie ma potrzeby mierzyć czasów stanów wysokich ( przynajmniej tak myślę)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 12:40 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

gronoarona napisał(a):
Preskaler na 1 więc ICR zwiększany co takt


Przemyśl to dobrze - jakie czasy chcesz mierzyć - bo w takim przypadku jedno tyknięcie timera będziesz miał co 125 ns (a wątpię że o to ci chodzi)

------------------------ [ Dodano po: 1 minucie ]

gronoarona napisał(a):
A co do czasów to chcę mierzyć tylko czasy stanów niskich bo tylko one się zmieniają więc wydaje mi się że nie ma potrzeby mierzyć czasów stanów wysokich


tzn ja bym powiedział, że masz rację tzn że ci się wydaje ...

owszem możesz tak podejść ale nie zdziw się gdy pilot będzie wrażliwy na każdy śmieć i zakłócenie. Kontrola poprawności ramki to PODSTAWA.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 12:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

Ale jeżeli użyję preskalera 8 to mam zliczaną 1 us której czas trwania trwa więcej niż połówka bitu zera.
Chyba że użyję innego taktowania.
A co do wrażliwości to rozumiem że trzeba zastosować filtrowanie poprawności.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 13:05 
Offline
Użytkownik

Dołączył(a): 24 kwi 2013
Posty: 454
Pomógł: 30

@gronoarona
Połówka bitu trwa grubo więcej niż 1us.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 13:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

bit zero 0.703us 0.517us

Dobrze rozumiem?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 13:09 
Offline
Użytkownik

Dołączył(a): 24 kwi 2013
Posty: 454
Pomógł: 30

1 trwa 1800us z czego impuls 1200us.
0 trwa 1200us z czego impuls 600us.

Plus pewien nadmiar na czas impulsu (stąd te 703us).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: SONY_RM-934
PostNapisane: 2 gru 2013, o 13:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 sie 2013
Posty: 116
Pomógł: 0

No tak macie rację, ślepo patrzyłem na swoją rozpiskę na której pomyliłem się w jednostkach.

Dzięki wielkie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO