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



Teraz jest 22 mar 2026, o 09:50


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 3 lip 2015, o 10:49 
Offline
Nowy

Dołączył(a): 11 kwi 2014
Posty: 9
Pomógł: 0

Witam. Zabrałem się za podczerwień i wzorując się na przykładach z zielonej książki Pana Mirka oraz z dokumentacji zamieszczonej na lirc.org/remotes dotyczącej pilota firmy SAMSUNG o symbolu BN59-00861A chciałem wykonać własny pilot. Test polegający na wysłaniu komendy POWER ( 0x40BF ) nie powoduję żadnej reakcji TV. Prawdopodobnie coś źle rozumiem/robię zatem proszę o jakieś podpowiedzi lub wytknięcie gdzie są błędy.
Dioda podłączona przez tranzystor NPN BC337 - świeci (sprawdzone telefonem)


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


#define F_CPU 8000000 // <------ ile razy mam na tym forum powtarzać, żeby nie stosować tego dziadostwa w kodzie ;) mirekk 36


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lip 2015, o 11:04 
Offline
Moderator
Avatar użytkownika

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

Spróbuj sobie zrobić z Greenbooka tester IR i sprawdź jak wygląda na wykresie to co nadajesz - czyli zrób też sobie odbiornik

łatwiej będzie ci to testować i zobaczyć gdzie robisz błąd

------------------------ [ Dodano po: kilkunastu sekundach ]

poza tym jeśli nie jesteś na 100% pewien jaka jest nośna w twoim pilocie to zmniejsz ją w procku do 36 kHz

------------------------ [ Dodano po: 2 minutach ]

Poza tym sprawdź wysyłanie po sobie co najmniej dwóch ramek z odstępem GAP, ponieważ niektóre telewizory tak właśnie działają - że reagują dopiero gdy nadlecą dwie takie same ramki a nawet trzy w równym odstępie GAP

_________________
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  
PostNapisane: 3 lip 2015, o 21:50 
Offline
Nowy

Dołączył(a): 11 kwi 2014
Posty: 9
Pomógł: 0

F_CPU :D Tak wiem, że powinno się to zrobić w opcjach projektu jednak tak na szybko wklepałem :P
Również próbowałem na 36 jak i 38 kHz i tak samo zero reakcji.

Zmontowałem sobie ten tester IR i tak się to ma:
HEADER - [4545 ; 4415]
ONE - [616 ; 1623]
ZERO - [616 ; 509]
PTRAIL - [621]

Dostałem ciąg 67 impulsów: [HEADER] [1110|0000|1110|0000] [0100|0000|1011|1111] [PTRAIL]
Czyli odpowiednio: [HEADER] [0xE0E0] [0x40BF] [PTRAIL]

Fragment z lirc.org:
Obrazek

Analizując otrzymane informacje dochodzę do wniosku, że wszystko jest zgodne z dokumentacją z lirc.org. Czyli błąd jest gdzieś w moim programie do wysyłania stąd też moja prośba o przyjrzenie się mojej funkcji send :/ Pewnie gdybym po kolei "ręcznie" wysyłał te impulsy to by zadziałało.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lip 2015, o 23:29 
Offline
Moderator
Avatar użytkownika

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

Mathew13 napisał(a):
Pewnie gdybym po kolei "ręcznie" wysyłał te impulsy to by zadziałało.

To zawsze możesz sprawdzić .... i jak masz problem to warto sprawdzić - to będzie swoisty debug

a jak nie zadziała to może oznaczać, że może na lirc org jest babol

_________________
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  
PostNapisane: 4 lip 2015, o 10:53 
Offline
Nowy

Dołączył(a): 11 kwi 2014
Posty: 9
Pomógł: 0

Problem rozwiązany :)
Problem polegał na tym, że funkcja send od złej strony wysyłała ramkę.
Zamiast:
[1110|0000|1110|0000][0100|0000|1011|1111]
Wysyłałem:
[0000|0111|0000|0111][1111|1101|0000|0010]

Wystarczyło zmienić fragment:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Na:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Czyli maskę z 0x01 na 0x8000 oraz przesunięcie bitowe w drugą stronę :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 lip 2015, o 11:08 
Offline
Moderator
Avatar użytkownika

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

no to ładnie :)

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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