Projekty VT Graficzny komputer samochodowy nowa wersja projektu VT-09 Projekt Komputera samochodowego, zamieszczony na okładce EdW /0, wzbudził duże zainteresowanie. Niniejszy opis dotyczy wersji znacznie ulepszonej, mającej wyświetlacz graficzny. Wykorzystanie wyświetlacza graficznego wcale nie jest trudne! W pierwszej części artykułu podane są informacje wstępne, pokazujące krok po kroku, jak wykorzystać taki wyświetlacz. Łatwo dostępne wyświetlacze graficzne znakomicie uatrakcyjniają budowane urządzenia. Mają większą powierzchnię wyświetlania danych. Dają możliwość oglądania wcześniej przygotowanych grafik w rozmiarze maksymalnym, stosownym do rozdzielczości wyświetlacza LCD. Wyświetlacz LCD użyty w prezentowanym właśnie projekcie ma wbudowany sterownik KS08, co pozwala bardzo łatwo wykorzystać go w BSCOM-ie. Koszt wyświetlacza nie jest wysoki, wynosi ok. 0zł. Zasadniczo ma to być nowa wersja komputera samochodowego, opisywanego w EdW /0, niemniej projekt płytki pozwala uniwersalnie wykorzystać ją do celów innych niż samochodowy komputer pokładowy. Użyty procesor TME- G w obudowie DIP0 ma wolne nóżki na dodatkowe opcje lub na zupełnie inny cel. Zanim przejdziemy do projektu komputera samochodowego, zapoznajmy się praktycznie z monochromatycznym wyświetlaczem graficznym. Wyświetlacz graficzny by nauczyć się korzystać z wyświetlaczy graficznych, wystarczy zmontować układ według schematu, pokazanego na rysunku. Wystarczy minimalna liczba elementów, aby cieszyć się z pierwszych efektów działania wyświetlacza LCD. Elementy D, C, C, U, C, C to zasilacz dostarczający do układu napięcie V. Niski pobór prądu, poniżej 00m, nie wymaga montowania U TMEG-P S JP_LCD R 9 x 0 RESET (DC)P PVR 9,k (DC)P (DC)P x S 8 (DC)P JMM C 00n (DC)P J 8 00u (DC)P 9 C9 (DC)P 0 J S REF (DC0)P0 K 8 J (SCK)PB R 0 (MISO)PB 9 (MOSI)PB C8 8 (SS)PB 00n (IN/OC0)PB (IN0/INT)PB (T)PB (T0/XCK)PB0 9 XTL (TOSC)PC 8 L0P (TOSC)PC XTL (TDI)PC R (TDO)PC (TMS)PC k BUZZ (TCK)PC T BC8 (SD)PC x (SCL)PC0 JMM J 0 JMM J8 VCC (OC)PD 0 GND (ICP)PD R J 9 (OC)PD 0 8 VCC (OCB)PD k GND (INT)PD T (INT0)PD C0 (TXD)PD BC8 00n (RXD)PD0 JP U 80T D N00 VI VO C C C C GND 0u 8..VDC 00n 00n Rys. 00u R k U C p TL C p Q MHz k PR JMM J J JMM radiatora na stabilizatorze. Kondensator C0 (00nF) ma być zamontowany jak najbliżej nóżek zasilania Tmegi, ponieważ filtruje dodatkowo zasilanie. Pomimo istnienia takiej pojemności blisko stabilizatora (C, C), brak C0 często bywa źródłem wadliwego działania i nie wolno go lekceważyć. Rezystor R wraz z C to obwód poprawnego startu procesora. Obwód U (TL), R, C8, C9 to źródło napięcia odniesienia,v. Od jego jakości zależy wynik odczytu przetwornika DC mikroprocesora. R i T sterują podświetleniem LCD, a PR reguluje kontrast Elektronika dla Wszystkich Czerwiec 0
Rys. Rys. wyświetlacza regulujemy tylko raz po uruchomieniu. by łatwo poznać podstawy, wystarczy wykorzystać pliki dostępne w Elportalu wśród materiałów dodatkowych do tego numeru. Znajduje się tam katalog o nazwie /podstawy a w nim BSCOM-owy program źródłowy soft_podstawy.bas oraz gotowy do zaprogramowania procesora soft_podstawy.hex. W programie źródłowym (fragment listingu na rysunku ), w linii podane jest, jak skonfigurowane jest podłączenie procesora z wyświetlaczem, by było zgodne z rysunkiem. Jak widać, obsługa graficznego LCD zajmuje pinów procesora. BSCOM wykorzystuje dostępną bibliotekę glcdks08.lib zawartą w jego pakiecie. Dzięki niej korzystanie z wyświetlacza jest 8 dziecinnie łatwe i sprowadza się do nauki stosowania kilku podstawowych poleceń. Wyświetlanie tekstu: Graficzny LCD jak najbardziej potrafi Rys. wyświetlać znaki tekstowe i wartości zmiennych / stałych podobnie jak wyświetlacz alfanumeryczny. Poleceniem zajmującym się tą funkcją jest LCDT. Wcześniej należy zdefiniować w programie, jakie czcionki będziemy wykorzystywać trzeba je podłączyć poleceniem inlcude. Pliki fontów dostępne z pakietem BSCOM mają rozmiar x8, 8x8, x oraz x pikseli i rozszerzenie.font. Przed wysłaniem wartości na wyświetlacz należy w programie wybrać (Setfont), którą czcionkę chcemy wykorzystać, a następnie... wyświetlamy tekst: LCDT y, x, znak_tekst_ zmienna_ lub_ stała, lub 0 y to pionowa kolumna, wiersz znaków. Jest on krotnością rozmiaru wyświetlacza podzieloną przez 8. Przy wyborze czcionki x8 lub 8x8 może przyjąć wartości:,,,,,,, 8. Natomiast jeśli wybierzemy czcionkę rozmiaru x lub x wtedy dysponujemy wierszami,,, lub,,, zależnie od którego zaczęliśmy wiersza. x wartość w pikselach początku znaku w wierszu (dla naszego LCD od do ). /0 nasz monochromatyczny LCD może zaświecić albo piksele znaków, albo tło wokół danej. Wyświetlamy grafikę: Czerwiec 0 Rozmiar naszego LCD umożliwia wyświetlenie wcześniej przygotowanych grafik o maksymalnym rozmiarze równym jego rozdzielczości, czyli 8x pikseli. le najpierw w BSCOM-ie za pomocą narzędzia z menu TOOLS/GRPHIC CONVERTER musimy przetworzyć grafikę monochromatyczną z formatu bitmapy na akceptowalną przez kompilator z rozszerzeniem otrzymamy plik z rozszerzeniem.bgf. Polecenie SHOWPIC x, y, etykieta Elektronika dla Wszystkich
wyświetli na ekranie grafikę, zaczynając od współrzędnych x, y. Plik.bgf trzeba podłączyć na końcu programu. Wyświetlamy (rysujemy) obiekty: LINE(x, y) -(x, y), 0 lub Spowoduje wyświetlenie (zaświeci lub zgasi piksele 0/ na końcu polecenia) linii z punktu o współrzędnych x, y do punktu x, y. PSET x, y, 0/ zaświeci/zgasi punkt o współrzędnych x, y. CIRCLE (x, y), r, /0 narysuje okrąg o promieniu r, którego środek będzie w punkcie x, y. BOX lub BOXFILL(x0, y0) -(x, y), /0 rysuje prostokąt pusty lub pełny po przekątnej. CLS czyści cały wyświetlacz. Rys.,k R9 k Pomiar napiecia akumulatora (zasilania) Do katod D,D J JMM N8 D R0 R 0k k C 00n C p 00n U PFC88T C8 8 VDD OSCI C 0u R N8 D OSCO Q INT 0 SCL VSS SD x,k 8Hz R (IN/OC0)PB (IN0/INT)PB (T)PB (T0/XCK)PB0 (TOSC)PC 9 (TOSC)PC 8 (TDI)PC (TDO)PC (TMS)PC (TCK)PC (SD)PC (SCL)PC0 Wszystko to naprawdę jest zaskakująco proste, podobnie jak całe programowanie w BSCOM-ie. W Elportalu, wśród materiałów dodatkowych można też znaleźć katalog /N_8 BSCOM_oscilloscope, pobrany ze strony http://www.mcselec.com/ index.php?option=com_ content&task=view&id=89 w skrócie: http://goo.gl/r0tsz zawierający projekt zaskakująco prościutkiego oscyloskopu (rysunek ). Opis układu Jeśli po zmontowaniu układu testowego według rysunku zechcemy od razu zmontować komputer pokładowy i cieszyć się jego działaniem, przechodzimy U TMEG-P JP 0 (DC)P R 9 RESET (DC)P 00n (DC)P sygnał (DC)P masa XTL (DC)P C Termometr 0 XTL (DC)P 8 (DC)P 9 JP (DC0)P0 0 00n 0 REF R VCC sygnał GND (SCK)PB 8 C masa (MISO)PB 0 PC8 VCC (MOSI)PB Termometr GND (SS)PB JMM OK N8 R0 0 J0 R9 0 D (OC)PD (ICP)PD 0 (OC)PD 9 (OCB)PD 8 (INT)PD (INT0)PD (TXD)PD (RXD)PD0 R 00k R 00k 00n C,k R BC8 x N00 JMM R J9 T k 0k R 0k C n D D D N8 JP V Światła po kluczyku masa zasilania V Podtrzymanie pamieci plus wtryskiwacza minus wtryskiwacza czujnik drogi VSS do wersji wzbogaconej o kilka dodatkowych elementów, jak pokazano to na rysunku. Uwaga! Dla ułatwienia analizy rysunek nie zawiera obwodów, pokazanych na rysunku, a jedynie dodatki, potrzebne w komputerze samochodowym. Dzięki temu jasno widać, że obwody wejściowe komputerka są bardzo podobne do obwodów zaprojektowanych w poprzedniej wersji komputera, przedstawionej w EdW /0, dostępnej jako VT-09. Zmiany względem tamtej wersji to przede wszystkim procesor. Tmega8 (8 pinów) została zamieniona na procesor Tmega (0 pinów), co daje znacznie więcej możliwości wykorzystania. Ze skromnego wyświetlacza alfanumerycznego x przesiadamy się na zdecydowanie bardziej atrakcyjny wyświetlacz graficzny o rozdzielczości 8x! Elementy obwodu R, R, C tworzą dzielnik napięcia, potrzebny do pomiaru napięcia zasilania. Powinien być tak dobrany, aby maksymalne mierzone napięcie na wejściu DC (pin ) nie przekroczyło wartości napięcia źródła odniesienia, czyli,v. Zegar czasu rzeczywistego zrealizowany jest na kostce PCF88 wraz z elementami biernymi D, D, Q, C, C, C8, R,. Rezystory R9, R0 dostarczają minimalnego napięcia zasilania do podtrzymania pamięci zegara. Elementy R, R, R, C, R, C filtrują sygnał z termometrów MCP900. Optotranzystor OK wraz z D, R9, R0 dostarcza do procesora sygnał z wtryskiwacza paliwa. Oprogramowanie procesora mierzy czas otwarcia wtryskiwacza, a po obliczeniach wyświetla wynik zużycie paliwa. Użycie optotranzystora daje nam izolację galwaniczną procesora od układu wtryskowego auta. Obwód R, D, C,, T formuje impulsy z czujnika drogi auta (VSS Vehicle Speed Sensor). Odczytywanie tego sygnału (w przerwaniu) dostarcza Elektronika dla Wszystkich Czerwiec 0 9
komputerowi informacji, z jaką prędkością porusza się auto. Dzielnik R, R, C dostarcza informację o włączonych światłach. Do obsługi komputerka służą trzy przyciski, dołączone do nóżek procesora. Ekran podzielony jest na część środkową, wypełnianą danymi podanymi większą czcionką (rozmiar x) oraz węższe części: górną oraz dolną (użyta czcionka x8). Każdy z ekranów ma jakby dwie strony. Krótkie naciskanie przycisków S środkowego, S górnego i S dolnego zmienia te strony, a z nimi wyświetlane dane. Natomiast dłuższe naciskanie ma wpływ na ich zmianę. I tak trzymanie dłużej przycisku górnego spowoduje wyzerowanie parametrów trasy, spalania średniego i maksymalnej zapisanej prędkości. Środkowy przycisk trzymany dłużej wprowadza nas w menu wpisywania zatankowanego paliwa (zmiany klawiszem środkowym i górnym). Rys. Dolny przycisk przytrzymany powyżej sekund spowoduje wejście w menu regulacji jasności podświetlenia LCD (zmiany przez klawisz środkowy i górny). W materiałach dodatkowych znajduje się program w postaci HEX, gotowy do zaprogramowania procesora. Do zaadaptowania komputera w konkretnym aucie niezbędne jest ustawienie dwóch stałych: stałej paliwa i stałej drogi. Ustawienia tych danych, a także zegara, daty oraz innych korekt dokonujemy, wchodząc w menu ustawień. W tym celu przytrzymujemy przycisk środkowy, następnie włączamy zasilanie. Ta kombinacja włącza tryb ustawień. BUZ C C9 Q JP JP S OK R R J0 U R C D R JP C D J9 S J U U S C Q PR JP_LCD T R C C C D T C C0 R C C R C8 C_R X X RC RC X X X C R R RX RX R0 D R R9 U R9 R0 C D T D C8 R R 0 Montaż i uruchomienie Nową wersję komputera samochodowego, która zawiera układ będący niejako sumą rysunków i, można zmontować na płytce drukowanej, pokazanej na rysunku. Montaż jest typowy zaczynamy od elementów najmniejszych, zworek, a kończymy na największych. Jedyna zworka nietypowa to połączenie kabelkiem punktu pomiaru napięcia akumulatora / zasilania. Układ prawidłowo zmontowany z zaprogramowanym procesorem działa poprawnie od razu po zmontowaniu i nie wymaga specjalnego urucha- Czerwiec 0 miania. Na wszelki wypadek warto jednak Elektronika dla Wszystkich
przed włożeniem procesora w podstawkę i wyświetlacza w gniazdo pinowe sprawdzić poprawność zasilania V. Zmontowana całość idealnie się mieści w obudowie uniwersalnej Z. Jako ciekawostkę dodałem do materiałów dodatkowych w Elportalu skan z czeskiego czasopisma materskie Radio z roku 990, gdzie przedstawiony był komputerek samochodowy, zrealizowany za pomocą dostępnych wówczas podzespołów. Warto porównać z opisanym powyżej komputerkiem graficznym. W Elportalu można też znaleźć dodtkowe fotografie modelu oraz katalog /grafiki, w którym umieszczonych jest szereg przydatnych znaków graficznych, zwłaszcza samochodowych w postaci plików bitmap.bmp oraz przetworzonych.bgf. Te małe obrazki będą przydatne wszystkim, którzy chcie- Wykaz elementów Układ testowy według rysunku R, R, R kw tht R,kW smd C, C p smd C 0u/V tht C, C, C, C8, C0 00n smd C, C9 00u/0V tht PR k tht poziomy Q MHZ tht T,T BC8 smd U TMEG dip0 U TL tht Buzzer V tht S-S mikrostyki 9mm x J-J8 zworki JP goldpiny x0 męskie gniazdo x0 żeńskie DIP0 - pod Tmege Wyświetlacz 8x, KS08. Dodatkowe elementy według rysunku R, R0 kw smd R 0kW tht liby rozszerzyć możliwości i zmienić wygląd komputerka samochodowego albo innego urządzenia opartego na opisanym układzie. Przy okazji: Redakcja EdW chętnie zaprezentuje modyfikacje i odmiany tego układu, zrealizowane przez Czytelników. rkadiusz Krzyjszczyk arkos@interia.pl 0kW smd R,kW smd R9, R0 0W smd R, R 0W R, R 00kW smd R 0kW smd R kw smd R,, R9,kW smd C, C, C, C, C8 00n smd C n smd C p smd C 0u/0V tht Q 8Hz tht D,D. N00 tht D, D, D, D N8 smd OK PC8 tht U PCF88 smd Termometry MCP900 00n przy jego nogach zasilających!!! J9, J0 zworki srebrzanką (drucikiem) J zworka kabelkiem, linką. Komplet podzespołów z płytką jest do stęp ny w sie ci han dlo wej VT ja ko kit szkol ny VT-. R E K L M Elektronika dla Wszystkich Czerwiec 0