Elektronika, mikrokontrolery, programowanie, komputery, sieci ... to moja praca i moje hobby | |||||
Menu | Elektronika - projekty - LUKA | eKamSoft.pl | |||
Start O mnie Copyright Elektronika - Poradniki - Projekty - Linki Kociaki Kontakt |
LUKA Zdalne strowanie za pomocą pilota to czesto duża wygoda i chętnie stosuje ją w swoich projektach. Jako standard transmisji wybrałem RC5 ze względu na dostępność dużej gamy pilotów jak i odbiorników. Swojego czasu znalazłem w jednej z publikacji opis sposobu odbioru wraz z krótkim programem w języku C na mikrokontrolry firmy microchip. Z niewielkimi modyfikacjami używam tej procedury do dzisiaj. Podczas testowania projektów zdaża się że nie wiadomo czy program źle działa czy wina leży po stronie pilota. Postanowiłem więc zbudować tester pilotów. Ma ona dwa zastosowania. Pierwsze to oczywiście sprawdzenie działania pilota a drugie to odczyt kodu przycisku który to następnie moge dodać do aktualnie pisanego programu. Tester pilotów zasadniczo składa się z 5 bloków. Pierwszy to zasilacz. Jak widać na schemacie ideowym składa się z części tłumiącej zakłócenia, transformatora sieciowego, mostka oraz stabilizatora na układzie scalonym 7805. Kolejnym blokiem jest mikrokontroler główny zarządzający całym testerem. W bloku tym pracuje PIC16F876A. Złącze ICSP JP101 służy do programowania mikrokontrolera w układzie. Jego układ pinów jest zgodny pod względem kolejności z programatorem PICKIT 2 (Vpp,Vdd,Vss,DAT,CLK). Podczas programowania należy pamiętać o rozłączeniu zwory JP102 aby zasilić tylko programowany układ. Złącza JP106 i JP107 służą do podłączenia diod LED kolejno zasilania i sygnalizacji odebrania komendy z pilota. Złącza JP108 i JP109 należy podłączyć do szyny danych bloku wyświetlacza LCD 16x2. Złącze JP105 to sterowanie wyświetlaczem (RS,RW,E). Do złącza JP110 należy podłączyć dowolny odbiornik podczerwieni 36kHz. Osobiście stosuje TSOP2236. Złącze JP103 steruje podświetlaniem wyświetlacza. Złącze JP104 należy połączyć linią dwuprzewodową z blokiem dźwięku ze złączem JP202. Dioda LED101 sygnalizuje swoim miganiem poprawną pracę mikrokontrolera. Następnym blokiem jest właśnie blok dźwięku zrealizowany na mikrokontrolerze PIC16F684. Właściwie jego jedynym zadaniem jest wygenerowanie krótkiego dźwięku po odebraniu komendy z pilota lub sygnału błędu przy niezidentyfikowaniu komendy. Mikrokontroler programujemy w układzie za pomocą złącza JP203 (zgodność jak wyżej) pamiętając o rozwraciu zwory JP201. Wybór rodzaju generowanego dźwięku odbywa się poprzez podanie stanu niskiego na wejścia RC0 lub RC1. Sygnał dźwiękowy jest odbierany z wyjścia RC5 i podawany na kolejny blok wzmacniacza małej częstotliwości zeralizowanego na LM386. Poziom sygnału regulujemy za pomocą R204. Do złącza JP204 możemy podłączyć miniaturowy przetwornik piezoelektryczny lub mały głośnik. Dioda LED201 sygnalizuje swoim miganiem poprawną pracę mikrokontrolera. Ostatnim blokiem jest wyświetlacz LCD16x2 wraz z przetwornicą -5V zralizowaną na ICL7660. Jest ona wymagana dla niektórych typów wyświetlaczy. Rezystorem R107 możemy regulować kontrast wyświetlacza w zakresie od -5V do +5V. Programy obsługi mikrokontrolera głównego i dźwięku modułu zostały napisane w języku C w środowisku MPLAB X IDE oraz skompilowane do formatu HEX kompilatorem XC8. Tutaj mała uwaga. Ze względu na procedury czasowe (procedura dekodowania komendy z pilota) które zostały wyliczone dla konkretnej wersji kompilatora program dla mikrokontrolera głównego (PIC16F876A) powinien być skompilowany kompilatorem XC8 w wersji 1.12. W wypadku mikrokontrolera dźwięku nie ma to znaczenia. W tym wypadku została skompilowany kompilatorem XC8 w wersji 1.20. Kody programów zostały podzielone na kilka bloków rozdzielonych nagłówkami z komentarzy które wyjaśniają pełnione zadanie każdego z nich. Myśle że jest on na tyle przejrzysty iż nie wymaga dodatkowego komentarza. Na zakończenie zestawienie materiałów i linków niezbędnych/przydatnych do wykonania testera oraz kilka zdjęć ilustrujących szczegóły jego budowy oraz funkcjonowania.
- Schemat ideowy bloku zasilania. Rafał Szulc |
||||
Copyright (c) by eKamSoft 1974-2024 |