LLKTRONIKA
I J 6 fi | |
, i |
s* : |
w |
Układ za pomocą pilota steruje indywidualnie czterema urządzeniami w samochodzie. Zaprezentowane urządzenie różni się od innych tego typu tym, że oprócz włączania różnych urządzeń ma możliwość „odpalenia” auta za pomocą naciśnięcia jednego przycisku. Układ został tak zaprojektowany, aby pozwalał na indywidualne ustawienie każdego z przekaźników na tryb monostabilny lub bis-tabilny. Oczywiście fakt, że układ został zaprojektowany do pracy w samochodzie, nie znaczy, że nie może być użyty do sterowania różnymi innymi urządzeniami np. w domu.
Schemat nadajnika jest przedstawiony na rysunku 1 i, jak widać, jest banalnie prosty. Procesor, cztery przyciski, układ nadawczy i dosłownie kilka elementów. Główną rolę pełni tu oczywiście procesor, a raczej program w nim zawarty. Procesor pozostaje w stanie obniżonego poboru prądu (tryb power down) do momentu przyciśnięcia dowolnego przycisku. Gdy to nastąpi, wówczas na nóżkę 6 (portD2) procesora zostanie podany sygnał masy, co spowoduje, że procesor wyjdzie ze stanu uśpienia i zacznie wykonywać program obsługi przerwania.
Cały program jest widoczny na listingu 1.
Kod nadawany przez nadajnik jest cztemastobi-towy i jest zawsze umieszczany w szesnastobitowej zmiennej KOD, która po zakodowaniu zostaje wysłana do nadajnika. Jak widać, kod składa się głów
nie z aktualnych wartości pinów B.0-B.4 oraz D.0-D.5 plus cyfra 3. Cyfra 3 oznacza po prostu 2 bity stanu (11), po których następuje bit o wartości zero, następnie zostaje wysłany zanegowany stan końcówek portuB, a na końcu stan końcówek portu D, który oczywiście zmienia się w zależności od tego, który przycisk aktualnie naciskamy. Kod jest wysyłany od najmłodszej części zmiennej KOD. kodowany jest w formacie bi-phase, zwanym także kodem Manchester Jeśli ktoś przyjrzał się dokładnie programowi, może zauważyć, że nadajnik nadaje kodem RC5, czyli dwa bity startu, bit parzystości (tu zawsze jest to 0), pięć bitów adresu oraz ostatnie sześć bitów to aktualnie naciśnięty przycisk. Przykład jest pokazany na rysunku 2. Zrobiłem tak, gdyż napisanie programu do odbiornika dzięki temu stało się dużo prostsze.
Układ wykonawczy jest również prosty: procesor, odbiornik i przekaźniki załączające oraz kilka innych elementów (rysunek 3).
Rys. 1
Odbiornik odbiera sygnał z nadajnika, następnie sygnał ten zostaje zanegowany przez tranzystor T5 i trafia do procesora. A ten po prostu sprawdza, czy kod jest zgodny / kodem
Listing 1
Dun Kod As Word Dim A As By te Dim B As Byte Diin C As Byte
Enable Interrupts Enable IntO
Config IntO = Low Level On IntO Nadawaj
Do
Xf Pind.2 = 0 Thon Gosub Nadawaj Powozdown
Loop Nadawaj:
A = Pini)
Toggie A
A = A And &B00C11111 A = A * 8 A = A + 3
B = Pind Kod = B * 256 Kod = Kod + A
For C * 0 To 13
If Kod.0 ■ 0 Then Set Portb.7 Waitus 888 Rosot Portb.7 Waitus 888 Elsę
Reset Portb.7 Waitus 888 S«t Portb.7 Waitus 888 End If
Shltt Kod , Right Next C
Reset Portb.7 Waitms 25 Return
Elektronika dla Wszystkich Październik 2005 57