logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Kody RC5 do pilota Philips dla BASCOM-A i attiny2313 bez LCD

pini0 24 Sie 2007 13:00 3942 15
REKLAMA
  • #1 4210879
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    Witam mam taką prośbę , potrzebuje kody z pilotów philips od tv a dokładniej podstawowe funkcje vol+ vol- program+ program- program 1 2 3 ... Korzystam z BASCOM-A i chce zaprogramować attiny2313 a nie mam wyświetlacza lcd .
  • REKLAMA
  • Pomocny post
    #2 4212214
    tmgofer
    Poziom 12  
    Posty: 84
    Pomógł: 1
    Ocena: 1
    Cześć!
    Jeżeli już masz działające urządzenie które odbiera komendy z pilota, a jedynie chcesz się dowiedzieć co to za komendy, to sprawa jest prosta;
    Ja kiedyś poradziłem sobie bez wyświetlacza - tylko jedną diodę podpiąłem. Do tego trzeba napisać prostą funkcję która zasygnalizuje "0" krótkim mrugnięciem a "1" długim. Kartka papieru i spisujesz ;)
  • #3 4213173
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    dzięki za odpowiedz . A masz może kod programu w bascom-ie
  • #4 4213218
    tmgofer
    Poziom 12  
    Posty: 84
    Pomógł: 1
    Ocena: 1
    Oj nie, niestety - tylko w C (i to jeszcze do standardu Sony SIRC)

    Najlepiej sklecić jakąś pętle w której sprawdzasz kolejne bity odebranej komendy jakąś funkcję typu "delay" i przełączenie stanu na pinie do którego podłączona jest dioda.
    Myślę że to jest w Twoim zasięgu ;)
  • REKLAMA
  • #5 4213339
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    Mam wyświetlacz led 3,5 X 7 led zlicza do 1999 zabiera portb i 4 z portd może da się z niego coś zrobić .
  • #6 4213355
    ksz
    Poziom 15  
    Posty: 113
    Pomógł: 12
    pini0 napisał:
    Witam mam taką prośbę , potrzebuje kody z pilotów philips od tv a dokładniej podstawowe funkcje vol+ vol- program+ program- program 1 2 3 ... Korzystam z BASCOM-A i chce zaprogramować attiny2313 a nie mam wyświetlacza lcd .

    Może się przyda..:
    http://lirc.sourceforge.net/remotes/
  • #7 4213384
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    lv2-0 0x0000000000001300
    lv2-1 0x0000000000001301
    lv2-2 0x0000000000001302
    lv2-3 0x0000000000001303
    lv2-4 0x0000000000001304
    lv2-5 0x0000000000001305
    lv2-6 0x0000000000001306
    lv2-7 0x0000000000001307
    lv2-8 0x0000000000001308
    lv2-9 0x0000000000001309

    no dobra ale jak to wpisać
    If Address = 3 And Command = 1 Then ??? pomocy bo nigdy nie widziałem jak wygląda kod w bascom-ie i czy girder ma jakieś powiązanie z tymi kodami .
  • #8 4213406
    ksz
    Poziom 15  
    Posty: 113
    Pomógł: 12
    pini0 napisał:
    lv2-0 0x0000000000001300
    lv2-1 0x0000000000001301
    lv2-2 0x0000000000001302
    lv2-3 0x0000000000001303
    lv2-4 0x0000000000001304
    lv2-5 0x0000000000001305
    lv2-6 0x0000000000001306
    lv2-7 0x0000000000001307
    lv2-8 0x0000000000001308
    lv2-9 0x0000000000001309

    no dobra ale jak to wpisać
    If Address = 3 And Command = 1 Then ??? pomocy bo nigdy nie widziałem jak wygląda kod w bascom-ie i czy girder ma jakieś powiązanie z tymi kodami .

    Sorry, ale nie rozumiem pytania.. W miejsce '???' co wpisać? To Twój projekt, Ty wiesz co ma robić :D
    I jak już, to chyba "If Address = 13"? (nie pamiętam specyfikacji rc5, więc nie wiem, co jest gdzie, rzuciło mi się tylko w oczy przyrównanie do niecałego bajta ;) )
  • REKLAMA
  • #10 4215010
    Andy74
    Poziom 25  
    Posty: 525
    Pomógł: 103
    Ocena: 24
    Witaj.
    Może to się przyda:

    Kody RC5 do pilota Philips dla BASCOM-A i attiny2313 bez LCD

    Pamiętaj, że to są numery rozkazów zalecane przez standard i akurat Twój pilot nie musi ich wykorzystywać dokładnie w ten sposób.

    Pozdrawiam
    Andy
  • REKLAMA
  • #11 4215089
    kundzios
    Poziom 19  
    Posty: 401
    Pomógł: 20
    Ocena: 42
    Witam
    Jak masz w zasięgu kostkę MAX232 to podłącz ją do mikrokontrolera i na komputerze wyświetl kody :). Metoda z diodą jest chyba łatwiejsza.

    Pozdrawiam
    Kundzios
  • #12 4216051
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    DZIĘKUJE ZA ODPOWIEDZI mam kostkę max232 . Kod podczerwieni będzie wyświetlany w bascom-avr \ terminal emulator ?
  • #13 4216498
    gregoorr
    Poziom 18  
    Posty: 229
    Pomógł: 19
    Ocena: 34
    pini0 napisał:


    no dobra ale jak to wpisać
    If Address = 3 And Command = 1 Then ??? pomocy bo nigdy nie widziałem jak wygląda kod w bascom-ie i czy girder ma jakieś powiązanie z tymi kodami .


    Tak na szybko wrzucam kawałek programu sterującego oświetleniem w pokoju. Pilotem RC5 mozna włączać i wyłączać 5 lamp.
    
    $regfile = "m8def.DAT"
    $crystal = 8000000
    
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portb.3 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5
    Cursor Off
    Cls
    
    
    
    Lcd "   LAMPY_RC-5"
    
    
    Config Rc5 = Pinb.0
    Config Pind.0 = Output
    Config Pind.1 = Output
    Config Pind.2 = Output
    Config Pind.3 = Output
    Config Pind.4 = Output
    Config Pind.6 = Output
    Config Pinc.4 = Input
    Set Portc.4
    
    
    Led Alias Portd.6
    Lampa1 Alias Portd.0
    Lampa2 Alias Portd.1
    Lampa3 Alias Portd.2
    Lampa4 Alias Portd.3
    Lampa5 Alias Portd.4
    Przycisk Alias Portc.4
    
    
    
    Set Lampa3
    Wait 3
    Reset Lampa3
    
    Rem * * * Zmienne I Podprogramy * * *
    Dim X As Byte
    Declare Sub Odczyt
    
    Dim Address As Byte , Command As Byte
    
    
    Enable Interrupts                                           'odblokowanie przerwań
    
    
    
    Rem * * * Pętla Główna * * *
    Do
    
    Getrc5(address , Command)
    Command = Command And &B01111111
    If Address <> 255 Then
    Call Odczyt
    End If
    
    Toggle Led
    
    Loop
    
    
    
    Rem * * * Odczyt Z Pilota * * *
    Sub Odczyt                                                  'program odczytu kodu
    
    
    
    Rem * * * Lampy Pojedyńcze * * *
    If Command = 1 Then
    Toggle Lampa1
    End If
    
    
    If Command = 2 Then
    Toggle Lampa2
    End If
    
    If Command = 3 Then
    Toggle Lampa3
    End If
    
    
    If Command = 4 Then
    Toggle Lampa4
    End If
    
    
    If Command = 5 Then
    Toggle Lampa5
    End If
    
    
    
    If Command = 12 Then
    Reset Lampa1
    Wait 1
    Reset Lampa2
    Wait 1
    Reset Lampa3
    Wait 1
    Reset Lampa4
    Wait 1
    Reset Lampa5
    End If
    
    
    
    
    If Command = 0 Then
    Set Lampa1
    Waitms 200
    Set Lampa2
    Waitms 200
    Set Lampa3
    Waitms 200
    Set Lampa4
    Waitms 200
    Set Lampa5
    Waitms 200
    End If
    
    
    If Command = 7 Then
    Set Lampa1
    Waitms 200
    Reset Lampa2
    Waitms 200
    Set Lampa3
    Waitms 200
    Reset Lampa4
    Waitms 200
    Set Lampa5
    Waitms 200
    End If
    
    
    If Command = 8 Then
    Reset Lampa1
    Waitms 200
    Set Lampa2
    Waitms 200
    Reset Lampa3
    Waitms 200
    Set Lampa4
    Waitms 200
    Reset Lampa5
    Waitms 200
    End If
    
    Waitms 500
    
    End Sub
    
    



    Może coś się przyda.
  • Pomocny post
    #14 4217086
    kundzios
    Poziom 19  
    Posty: 401
    Pomógł: 20
    Ocena: 42
    Cytat:
    Kod podczerwieni będzie wyświetlany w bascom-avr \ terminal emulator ?

    Tak, jeżeli program napiszesz prawidłowo i dobrze skonfigurujesz BASCOM'a
  • #15 4217551
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    No coś znalazłem w help-ie przykład ale nie wiem gdzie podłączyć max232 bo niema pinu podanego . Mam nadzieje że idę w dobrym kierunku . Działa podłączyłem (z procesora do komputera) PD1 > 11 MAX 14 > 2 RXD (z komputera do procesora) to chyba będzie PD0 < 12 MAX 13 < 3 TXD . Ale działa nie za dobrze bo jakieś dziwne znaki mi wyskakują jak ustawić ten terminal ??
    -------------------------------------------------------------------
    '                         RS232BUFFEROUT.BAS
    '                    (c) 2000-2002 MCS Electronics
    ' Przykład pokazuje jak używać bufora wyjściowego transmisji szeregowej.
    '-------------------------------------------------------------------
    $baud = 9600
    $crystal = 4000000
    
    'ustawienie bufora transmisji dla wysyłanych znaków o długości 20 znaków
    Config Serialout = Buffered , Size = 20
    
    'Jest szczególnie ważne by włączyć globalny system przerwań, gdyż używane jest przerwanie UDRE
    Enable Interrupts
    
    Print "Witaj świecie!"
    Do
      Wait 1
      'UWAGA! Procedura obsługi przerwania spowoduje zwolnienie działania instrukcji opóźniających 
      Print "Test"
    Loop
    
    End
    
    (c) Zbigniew Gibek, 2002-2003   (c) MCS Electronics, 1999-2003
    
    Kody RC5 do pilota Philips dla BASCOM-A i attiny2313 bez LCD
  • #16 4228449
    pini0
    Poziom 15  
    Posty: 137
    Pomógł: 6
    Dziękuje wszystkim za pomocne wskazówki okazało się żę mam uszkodzony czujnik , dlatego mi nic nie działało .
    Ustawienia terminala.
    Kody RC5 do pilota Philips dla BASCOM-A i attiny2313 bez LCD

Podsumowanie tematu

✨ Dyskusja dotyczy uzyskania i wykorzystania kodów RC5 z pilotów telewizorów Philips do sterowania mikrokontrolerem attiny2313 programowanym w BASCOM-AVR, bez użycia wyświetlacza LCD. Poruszono metody identyfikacji kodów IR, m.in. sygnalizację bitów za pomocą diody LED oraz wykorzystanie interfejsu MAX232 do przesyłania danych do komputera i wyświetlania kodów w terminalu szeregowym. Podano linki do baz kodów pilotów (np. LIRC) oraz przykładowy fragment programu w BASCOM sterującego oświetleniem za pomocą RC5. Omówiono kwestie konfiguracji portów i przerwań w BASCOM oraz problemy z podłączeniem MAX232 i ustawieniami terminala (baud rate, piny RX/TX). Ostatecznie problemem okazał się uszkodzony czujnik podczerwieni, co uniemożliwiało poprawne odbieranie sygnałów. Wskazano, że kody RC5 można przypisać w BASCOM za pomocą instrukcji warunkowych porównujących adres i komendę.
Wygenerowane przez model językowy.
REKLAMA