Elektronik Hobbysta

Główna O nas Kontakt Projekty Timer NE555 ST6 Realizer Historia Linki

   

PROJEKTY ZAGRANICZNE

MULTIPROGRAMATOR ST62

KIT AVT992

Do skonstruowania tego układu skłonili mnie koledzy ST62 – maniacy którzy urzeczeni Realizerem zapragnęli posiadać programator, który by umożliwił zaprogramowanie wielu typów mikrokontrolerów ośmiobitowych rodziny ST62 bez potrzeby nabywania drogich programatorów. Mikrokontrolery te dostępne są od wielu lat na naszym rynku i nic nie zapowiada żeby bezpowrotnie zaginęły. Przyczynił się do tego program Realizer który otworzył drogę ku technice mikroprocesorowej wszystkim tym którzy nie maja czasu lub chęci zgłębiania tajemnic skomplikowanych języków programowania. Program Realizer dostępny jest w ofercie AVT na płycie CDEP2. Przedstawiony układ programatora jest dość tanim urządzeniem w którym koszty obniżono do minimum poprzez zastosowanie zwykłych podstawek zamiast drogich typu textool. Ma to oczywiście swoje wady gdyż musimy bardziej uważać przy wkładaniu mikrokontrolera w podstawkę. Lecz przy niewielkich ilościach programowanych układów nie ma to większego znaczenia. Oczywiście nic nie stoi na przeszkodzie aby zastosować podstawki profesjonalne. Jakie możliwości ma programator? Układ programatora został tak zaprojektowany aby mógł współpracować z programem Windows Epromer oraz obsługiwać jak największą liczbę mikrokontrolerów rodziny ST62. Umożliwia on zaprogramowanie następujących typów mikrokontrolerów : 

ST62T00/01/03 

ST62T08/09/10/18/20 

ST62T15/25/30 

ST62T55/65 

ST62T53/60/63 

ST62T52/62 

Jak widzimy duży wybór mikrokontrolerów daje nam olbrzymie możliwości przy projektowaniu urządzeń w oparciu o ST62xx. Nie będę tu dokładnie opisywał po kolei każdego typu mikrokontrolera z tej rodziny ograniczę się tylko do pokazania topografii wyprowadzeń rys1. Wiele osób które zetknęły się ST-kami zastanawiało co oznaczają wszelkie dodatkowe napisy na obudowach mikrokontrolerach. Myślę że rys2 rozwieje trochę wątpliwości na ten temat.  

Program Windows Epromer dostępny jest na stronie internetowej producenta rys3 pod adresem http://eu.st.com/stonline/products/support/mcu8/common/softools.htm. Jest to dosyć ciekawe narzędzie sprowadzające proces programowania do kilku przyjemnych chwil przy komputerze. 

Program ten wraz z programatorem eliminuje męczące przechodzenie do sesji DOS jakie miało miejsce w starszych wersjach programów. Nasz programator również współpracuje właśnie z taką wersją, która znajdziemy na płycie CDEP2. Przy zastosowaniu tego programu ilość mikrokontrolerów jakie możemy zaprogramować jest dużo mniejsza ale nie jest wymagana uciążliwa zmiana pliku DEV. 

Budowa i działanie: na rys 4 przedstawiony jest schemat blokowy programatora. Układ podzielić na następujące bloki

 - Zasilanie programatora

 - układy separujące ( bufor ) 74HCT244,74HC04(4069) 

- pole programujące 

W całym układzie programatora najbardziej skomplikowane jest zasilanie mikrokontrolerów. Program komputerowy sterujący pracą programatora wysyła sygnały załączające odpowiednie wartości napięć dla programowanego mikrokontrolera. Układ separujący (bufor) stanowi barierę pomiędzy komputerem a programowanym procesorem. Zabezpiecza to komputer przed ewentualnym uszkodzeniem portu drukarkowego. Pole programujące jest to sześć odpowiednio połączonych podstawek każda dla określonego typu mikrokontrolerów:

 - podstawka 1 ST62T00/01/03

 - podstawka 2 ST62T08/09/10/18/20

 - podstawka 3 ST62T15/25/30 

- podstawka 4 ST62T55/65 

- podstawka 5 St62T53/60/63

 - podstawka 6 ST62T52/62 

Na rys5 znajduje się schemat ideowy programatora, sprawia on wrażenie dość skomplikowanego co jest tylko złudzeniem. Jeżeli przyglądniemy mu się uważnie zauważymy że nie taki diabeł straszny. Komunikacja z komputerem odbywa się poprzez drukarkowe złącze Centronics DB25. Natomiast na płycie drukowanej programatora znajduje się gniazdo żeńskie DB9. W związku z tym musimy dodatkowo do programatora wykonać kabel przejściowy DB9 – DB25 według schematu zamieszczonego na rysunku rys6

Układ scalony US2 74HC244 jest ośmiobitowym buforem posiadającym wyjścia trójstanowe proste. Układ wewnętrznie podzielony jest na dwie części po cztery bufory każda czwórka ma jedno dodatkowe wejście sterujące gdzie podanie stanu niskiego na wejście powoduje wyprowadzenie buforu ze stanu blokady. Wyprowadzeniami sterującymi pracą buforów to są piny 1,19 układu 74HC244 do nich podłączona jest zworka ZW1 oraz rezystor podciągający R17. W celu wprowadzenia w stan blokady należy zworkę ZW1 wyjąć. W stanie blokady nie jest możliwe zaprogramowanie lub odczytanie zawartości mikrokontrolera. Styk 9 gniazda połączony jest z wejściem bramki NOT U1F (74HC04) poprzez rezystor ograniczający prąd wejściowy R2, dodatkowo miedzy wejściem a masa włączony jest rezystor R3 300k. Wyjście bramki steruje praca tranzystora npn T2 poprzez rezystor R11. W przypadku kiedy na styku 9 stan logiczny wynosi L lub urządzenie nie jest podłączone do komputera na wyjściu bramki U1F pojawia się stan wysoki H który wprowadza tranzystor T2 w stan przewodzenia co z kolei powoduje spolaryzowanie bazy tranzystora pnp T1 i wprowadzenie jego w stan przewodzenia. Wprowadzony w stan przewodzenia tranzystor T1 podaje napięcie na układy stabilizacyjne US 4 i US5 78L05. Ze stabilizatora US5 podane jest napięcie +5V VDD zasilające mikrokontrolery. Napięcie VDD podawane jest w trakcie odczytu jak i programowania procesora. Obecność napięcia sygnalizowana jest zapaleniem się diody D3 kolor żółty. Układ ze stabilizatorem US4 oprócz dostarczenia napięcia TEST +5V potrzebnego do odczytu zawartości pamięci mikrokontrolera, dodatkowo generuje napięcie programujące VPP +12,5V. Styk 5 złącza DB9 połączony jest z wejściem bramki NOT U1E poprzez rezystor ograniczający R4 wyjście tej bramki połączone jest z wejściem następnej bramki U1E wyjście tej bramki doprowadzone jest bazę tranzystora npn T3 poprzez rezystor R4. Pomiędzy kolektor a emiter włączona jest dioda zenera D4 o wartości napięcia zenera 7,5V. Tranzystor i dioda włączone są pomiędzy 2 wyprowadzenie GND stabilizatora US4 a masę całego układu. W przypadku kiedy na wejściu styk 5 DB9 jest stan niski L tranzystor T3 nie przewodzi i na wyjściu układu US4 pojawia się napięcie +5V plus napięcie diody zenera 7,5V. Wtedy wartość napięcia programującego VPP wyniesie +12,5V. W chwili pojawienia się stanu wysokiego na styku 5 DB9 na bazie tranzystora T3 pojawia się napięcie wprowadzające tranzystor w stan przewodzenia. Dioda zenera zostaje zbocznikowana i na wyjściu układu US4 pojawi się napięcie TEST +5V. Obydwa napięcia +5V lub +12,5V podawane są na wyprowadzenia TEST/VPP mikrokontrolerów. Pojawienie się napięcia +5V i +12,5V sygnalizowane jest świeceniem diody LED D2 CZERWONA w przypadku kiedy napięcie jest wyższe dioda świeci jaśniej niż kiedy napięcie wynosi +5V. Czwarty styk gniazda DB9 podłączony jest na wejście bramki U1A poprzez nią podawany jest sygnał RESET do programowanych mikrokontrolerów. Pozostałe sygnały SDOP TORMIN TM2 OSC1 sterujące procesem programowania mikrokontrolera podane są poprzez bufor US2 do programowanych układów. Montaż i uruchomienie: Programator umieszczony jest na dwustronnej płytce drukowanej o wymiarach 18cm x 6cm. 

Na rys7 przedstawiona jest mozaika ścieżek. Po wykonaniu lub też zamówieniu płytki możemy przystąpić do montażu układu. Ze względu na swoją prostotę nie powinno to zająć dużo czasu. Więcej uwagi powinniśmy jednak poświęcić przy przygotowaniu kabla przejściowego DB9 – DB25, tak aby nie popełnić jakiejś pomyłki która może źle się skończyć dla naszego komputera. Ze złącza DB25 wykorzystujemy następujące wyprowadzenia do których przylutowujemy zarobione końcówki taśmy. 

styk 2 złącza DB25 łączymy z 9 stykiem złącza DB9, 

styk 3 złącza DB25 łączymy z 5 stykiem złącza DB9, 

styk 4 złącza DB25 łączymy z 8 stykiem złącza DB9, 

styk 5 złącza DB25 łączymy z 3 stykiem złącza DB9, 

styk 6 złącza DB25 łączymy z 4 stykiem złącza DB9, 

styk 7 złącza DB25 łączymy z 7 stykiem złącza DB9, 

styk 11 złącza DB25 łączymy z 2 stykiem złącza DB9, 

styki od 18 - 25 łączymy razem i łączymy z masą programatora styk1 złącza DB9. 

Gdy już zmontujemy naszą przejściówkę musimy jeszcze przed podłączeniem koniecznie sprawdzić poprawność połączeń miernikiem. Po zmontowaniu całego programatora wraz z przygotowaniem kabla możemy przystąpić do jego uruchamiania. Poprawnie wykonany układ możemy pobieżnie sprawdzić bez oprogramowania obsługującego obserwując diody LED D1 D2 D3: - po włączeniu zasilania do układu wszystkie diody powinny się świecić (komputer nie podłączony) - po podłączeniu komputera i jego uruchomieniu diody D2 i D3 na chwilę gasną po czym przez czas uruchamiania systemu Windows ponownie świecą i po uruchomieniu systemu ponownie gasną. Cały czas świeci się tylko dioda D1 informująca nas o obecności napięcia zasilającego programator. Jeżeli będziecie mieli takie same objawy działania programatora to z dużą dozą prawdopodobieństwa złożony przez was układ jest sprawny. Jednak najbardziej pewne jest praktyczne sprawdzenie z programem Windows Epromer obsługującym programator, lub specjalnym programem testującym dołączonym do płyty. Po uruchomieniu otwiera się okno z przyciskami po naciśnięciu których programator reaguje w następujący sposób: 

- Przycisk ODCZYT zapalają się diody D2 i D3 ( dioda D2 świeci słabiej) 

- Przycisk PROGRAMOWANIE zapalają się diody D2 i D3 ( dioda D2 świeci jaśniej) 

- Przycisk WCZYSĆ diody D2 i D3 gasną. 

Oprogramowanie i obsługa programatora: Po ściągnięciu oprogramowania obsługującego ze strony internetowej możemy przystąpić do jego zainstalowania. Plik który musimy ściągnąć ma około 1,4 Mb więc ściąganie programu nie powinno trwać długo. Standardowy proces instalacji przebiega bez żadnych problemów i trwa krótko. Program Windows Epromer pracuje w środowisku Windows 95. Na rys8 widzimy okno programu już zainstalowanego i uruchomionego. 

Obsługa programu nie jest skomplikowana i wręcz po kilku minutach jesteśmy go w stanie tak opanować aby móc bez większych problemów zaprogramować mikrokontroler. Przed przystąpieniem do programowania musimy odpowiednio skonfigurować program. W menu wybieramy Configure a następnie Configure EPROMER otworzy się okno jak na rys9. 

Z listy wybieramy ten starter kit który obsługuje mikrokontroler jaki chcemy zaprogramować oraz port LPT. Następnie w Select Chip rys10 wybieramy typ procesora. 

Praktycznie tylko jeszcze zostało załadować plik hex i umieścić w odpowiedniej podstawce mikrokontroler do zaprogramowania. Przebiegający proces programowania możemy obserwować na pasku stanu. Wszelkie dodatkowe informacje o przebiegu programowania wyświetlane są w oknie dialogowym. Po zakończeniu programowania mikrokontrolera które zostało uwieńczone sukcesem, możemy się cieszyć i przystąpić do realizacji nowych szalonych aplikacji i pomysłów z użyciem procesorów rodziny ST62xx. Powodzenia!

Krzysztof Górski

WIDOK OD STRONY EMENETÓW

 

WIDOK OD STRONY BOTTOM