programator emulator mikrokontrolerów 89Cx051 (1)


Programator - emulator mikrokontrolerów AT89Cx051
P R O J E K T Y
Programator - emulator
mikrokontrolerów
AT89Cx051, część 1
kit AVT-498
W literaturze i Internecie po- nym narzdziem, skutecznie
jawiło si juł wiele opisw wspomagającym uruchamianie
programatorw dla mikroproce- nowych układw.
Mikrokontrolery AT89Cx051
sorw firmy Atmel z pamiecią Dla niektrych Czytelnikw
produkowane przez firm
FLASH. Troch mniej znalazłoby mołe byĘ wałna informacja, łe
Atmel cieszą si wśrd si projektw emulatorw. Te układ wspłpracuje poprawnie
ostatnie pracują zazwyczaj z KADYM komputerem wypo-
konstruktorw zasłułonym
z własnym generatorem zegaro- sałonym w łącze szeregowe, jeś-
powodzeniem. Ich niska cena,
wym i słabo (lub wcale) emulują li tylko mołna na nim ustawiĘ
zgodnośĘ z popularnymi '51,
wysokoomowe wejścia wewntr- odpowiednie parametry trans-
łatwa dostpnośĘ, pamiĘ
znego komparatora. Czsto wy- misji. Po niewielkiej przerbce
programu typu Flash oraz
magają sprztowego ustawiania obwodu wejściowego, programa-
stosunkowo wysoka wydajnośĘ
konfiguracji pinw P1.0 (AIN0) tor mołe nawet pracowaĘ z nie-
sprawiają, łe konkurenci mają
i P1.1 (AIN1). Gdy chcemy uły- dokoczonym portem o pozio-
trudny ływot na rynku.
waĘ je jako analogowe wejścia mach napicia 0 i +5V. Osobną
Urządzenie prezentowane
komparatora czy wejścia lub sprawą jest dostpnośĘ progra-
w artykule pozwala tanio
wyjścia cyfrowe, to trzeba odpo- mw asemblera dla procesorw
rozwiązaĘ wikszośĘ wiednio ustawiĘ zworki. rodziny MCS-51 na komputery
Pomysł opracowania takiego typu Amiga, Atari czy Commo-
problemw narzdziowych,
urządzenia powstał wwczas, dore. Zapewne w Internecie
jakie mogą napotkaĘ
gdy niłej podpisany "spalił" ko- mołna znaleĘ takie oprogramo-
konstruktorzy korzystający
lejno trzy procesory przez od- wanie z opisem i tekstami rod-
z procesorw x051.
wrotne włołenie ich do tej łowymi.
Na jednej, niewielkiej
samej podstawki. Konstrukcja Jak w kałdej tego typu reali-
płytce otrzymujecie
układu nawiązuje do zestaww zacji, przyjte rozwiązanie jest
programator oraz emulator -
uruchomieniowych STARTER kompromisem midzy kosztem
czyli komplet narzdzi,
KIT i łączy w sobie cechy pro- elementw i funkcjonalnością
pozwalający bez trudu
gramatora i emulatora. Dlatego układu. Wymieniając podstawo-
zbudowaĘ dowolne
bdzie z pewnością atrakcyjna we cechy urządzenia rozdzieli-
mikroprocesorowe urządzenie. dla kolegw stawiających pier- łem je na cachy programatora
wsze kroki w programowaniu i emulatora, dla kałdego z nich
mikroprocesorw jednoukłado- wyodrbniając najistotniejsze wa-
wych. Praktyka pokazała jednak, dy i zalety. Powinno to pomc
łe w rkach troch bardziej za- w szybkim zorientowaniu si,
awansowanego elektronika-pro- gdzie przebiega linia wspomnia-
gramisty mołe staĘ si potł- nego kompromisu.
Elektronika Praktyczna 3/99
51
Programator - emulator mikrokontrolerów AT89Cx051
Opis układu
Schemat elektryczny programa-
tora przedstawiono na rys. 2.
Przyjto zasad, łe sygnały z in-
deksem /U pochodzą z procesora
sterującego, zaś indeks /Z ozna-
cza, łe linie są połączone z wty-
kiem emulacyjnym za pośrednic-
twem złącza Z2. Linie sygnałw
bez indeksu są połączone z pro-
gramowanym procesorem znajdu-
jącym si w podstawce Z1.
Układ sterowania programatora
zrealizowano na procesorze
AT89C2051 (U1) taktowanym
sygnałem z oscylatora kwarcowego
(rezonatorem kwarcowym Q1
o czstotliwości 11,0592MHz). Jed-
nokierunkową komunikacj z kom-
putera do programatora, przy rw-
Rys. 1. Schemat blokowy urządzenia.
noczesnym zapewnieniu izolacji
galwanicznej, umołliwia transop-
Mołe najpierw - aby przybli- z powrotem do podstawki. Przy tor TO1. Dioda LED1 (łłta) włą-
łyĘ Czytelnikowi jaka idea przy- kałdej z tych czynności mołna si czona szeregowo z diodą świecącą
świecała mi przy opracowywaniu pomyliĘ i włołyĘ procesor od- transoptora słuły do sygnalizowa-
projektu programatora - pokrtce wrotnie. Dopracowane firmowe nia transmisji z komputera. Dioda
opisz, w jaki sposb tworz op- programatory potrafią wykryĘ i za- D1 włączona antyrwnolegle do
rogramowanie dla mikroproceso- sygnalizowaĘ taką sytuacj, dziki diod świecących TO1 i LED1 ogra-
rw jednoukładowych. Zaczynam czemu unika si uszkodzenia mik- nicza napicie o odwrotnej pola-
od skopiowania programu z jakie- roprocesora. Błąd przy wkładaniu ryzacji, ktre mogłoby je uszko-
goś starego, podobnego projektu. do podstawki w układzie urucha- dziĘ. Rezystor R4 ogranicza prąd
Aktualizuj deklaracje wejśĘ, mianym koczy si zazwyczaj pobierany ze złącza szeregowego
wyjśĘ i stałych. Sprawdzam znacznie gorzej. Chcąc uniknąĘ komputera. Rezystor R8 zapewnia
i ewentualnie zmieniam ustawie- takich sytuacji zacząłem opraco- dodatkowe podciągnicie pinu
nia rejestrw SFR dla przerwa wywaĘ dla procesora przełącznik RxD procesora do napicia +5V
i timerw. Tworz od nowa lub PROGRAMATOR<->UKŁAD_DO- i przyspiesza powrt tego wejścia
poprawiam procedury obsługi CELOWY. Dziki temu nie byłoby do stanu wysokiego. Złącze Z3 to
przerwa. Na kocu pisz pro- potrzeby wyjmowania procesora listwa z trzema igłami, z ktrych
gram głwny. Uruchamianie za- z podstawki, a wystarczałoby pros- dwie zewntrzne są połączone
czynam od symulatora, a gdy pro- te przełączanie. W czasie opraco- z masą, a środkowa to sygnał TxD
gram jest prosty, przechodz od wywania szczegłowej koncepcji z komputera. Dziki takiemu roz-
razu do emulatora. Po znalezieniu układ troch si rozrsł. Do prze- wiązaniu nie trzeba uwałaĘ na
i usuniciu powałnych błdw, łącznika zrealizowanego na scalo- sposb podłączania gniazda na
program zaczyna z grubsza reali- nych kluczach analogowych dobu- kablu transmisyjnym do progra-
zowaĘ to co powinien. Teraz dowałem programator. Z drugiej matora.
trzeba sprawdziĘ poszczeglne strony dodano kilka prostych, ale Układy U4, U5, U6, U7 i U8
jego fragmenty. W tej fazie bardzo bardzo ułytecznych drobiazgw, (HCT4053) to zespł przełączni-
wałna jest umiejtnośĘ przewidy- takich jak przycisk zerowania kw analogowych, dziki ktrym
wania stanw wejściowych, jakie i wskanik zatrzymania procesora. jest mołliwe przełączanie wejśĘ/
mołe otrzymaĘ program. Zazwy- Schemat blokowy powstałego wyjśĘ programowanego procesora
czaj to właśnie zajmuje najwicej w ten sposb programatora-emula- umieszczonego w podstawce Z1.
czasu. Znacznie szybsze jest wpro- tora przedstawiono na rys. 1. Do przełączania sygnałw zegaro-
wadzenie poprawek lub uzupeł- Procesor wkłada si w podstawk wych XTAL1 i XTAL2 oraz napi-
nie. Rzadko, ale jednak zdarza programatora. Do układu urucha- cia programującego konieczne by-
si, łe na tym ostatnim etapie nie mianego dołącza si przewd taś- ło zastosowanie przełącznikw
mog korzystaĘ z emulatora. Wy- mowy zakoczony wtykiem emu- (U3) o lepszych parametrach. Wy-
nika to albo z pływającego za- lacyjnym. Plik z programem w po- br padł na układ MAX333A
silania w układzie docelowym, al- staci binarnej, ktry przychodzi firmy Maxim. Jest to układ zawie-
bo z ogranicze emulatora. Ko- po łączu szeregowym jest wpisy- rający cztery analogowe klucze
czy si na wielokrotnym wyjmo- wany do pamici FLASH proce- przełączne o niskiej rezystancji
waniu procesora z podstawki sora. Po zaprogramowaniu proce- w stanie włączenia. Ponadto układ
w układzie uruchamianym, pro- sor jest dołączany do uruchamia- zasilany tak jak w naszym przy-
gramowaniu jego pamici popra- nego układu i rozpoczyna wyko- padku ze rdła o napiciu +12V
wionym programem i wkładaniu nywanie zapisanego programu. mołe byĘ, bez ładnych konwer-
Elektronika Praktyczna 3/99
52
Programator - emulator mikrokontrolerów AT89Cx051
Rys. 2. Schemat elektryczny programatora.
Elektronika Praktyczna 3/99
53
Programator - emulator mikrokontrolerów AT89Cx051
ter. Słuły do tego krtki impuls wpisanego programu. Przyciskiem
podany na wyprowadzenie RESET mołna wymusiĘ realizacj
XTAL1 (Z1), pochodzący z wy- programu od początku. Z przycis-
jścia P3.4 (U1). Sygnał INH po- ku rcznego zerowania naleły
woduje w stanie wysokim zablo- ostrołnie korzystaĘ, jeśli urucha-
kowanie kluczy analogowych i po miany system jest wyposałony
zanegowaniu w bramce (4,5,6) U9
- podanie niskiego stanu logicz-
WYKAZ ELEMENTÓW
nego na wejście RST programo-
wanego procesora, co jest ko- Rezystory
nieczne podczas sekwencji rozpo- R1, R2, R3, R8: 10k&!/0,25W
czynającej programowanie.
R4, R5, R6: 2,2k&!/0,25W
Napicie zasilające +5V jest
R7: 330&!/0,25W
czerpane wprost z układu uru-
Kondensatory
chamianego. Pobr prądu w sta-
C1, C2, C3: 10F/16V
nie spoczynku z pustą podstaw-
C4, C5: 1F/63V MKT
ką Z1 wynosił w układzie mo-
C6, C7: 22pF
Rys. 3. Sposób sterowania
delowym 16mA. W czasie pro-
C8, C9: 100nF/63V
generatora.
gramowania prąd wzrastał do
Półprzewodniki
26mA, a w trybie emulacji
D1: 1N4148
terw poziomu, sterowany sygna- w układzie z zegarem 12MHz wy-
DZ1: BZX83C6V8
łami o poziomach TTL. Do stero- nosił około 33mA. Napicie pro-
LED1: L-934LYD (Kingbright) lub
wania przełącznikami słułą trzy gramujące +12V jest wytwarzane
inna żółta, niskoprądowa
sygnały ABC, INH i PROG. W cza- w układzie MAX662, ktrego od-
LED2, LED4: L-934LGD (Kingbright)
sie programowania sygnał ABC powiednikiem jest LTC1262 fir-
lub inna zielona, niskoprądowa
przyjmuje niski stan logiczny. my Linear Technology. Są to
LED3: L-934LID (Kingbright) lub
Powoduje to przełączenie proce- przetwornice kondensatorowe
inna czerwona, niskoprądowa
sora umieszczonego w podstawce (bezindukcyjne), zaprojektowane
TO1: PC817
Z1 na programator i zapalenie specjalnie do wykorzystywania
U1: AT89C2051 (Atmel)
czerwonej diody LED3 oznaczają- przy programowaniu pamici
zaprogramowany
cej programowanie. Port P1 (Z1) FLASH. Zielona dioda LED2 jest
U2: MAX662 (Maxim), LTC1262
jest dołączony do portu P1 pro- dołączona do napicia +12V
(Linear Technology), ST662A
cesora sterującego (U1). Na li- przez szeregowo połączoną dio-
(STMicroelectronics)
niach tego portu pojawiają si d Zenera o napiciu 6,8V i re-
U3: MAX333A (Maxim)
bajty odebrane z portu szeregowe- zystor R6 ograniczający prąd.
U4, U5, U6, U7, U8: HCT4053
go przeznaczone do wpisania do Dziki temu LED1 świecąc wska-
U9: HCT02
pamici programu. Rezystory R2 zuje nie tylko obecnośĘ napicia
Z1: AT89Cx051 (Atmel) typ
i R3 podciągają wyjścia P1.0 i P1.1 zasilającego, ale rwnieł popra-
procesora zależny od aplikacji
do +5V. Do wyprowadze steru- wną prac układu przetwornicy.
Różne
jących P3.4, P3.5 i P3.7 jest do- Napiciem +12V są zasilane
Gniazdo 2x10 na kabel taśmowy
łączany sygnał P3.457/U. Na pin przełączniki analogowe z układu
Kabel taśmowy 20-żyłowy 20cm
P3.3 jest podany sygnał P3.457/ U3. Jest to konieczne, gdył klu-
U zanegowany w bramce (1, 2, 3) cze te słułą m.in. do przyłącza- *Kabel połączeniowy do
komputera: gniazdo DB9 do
układu U9. Pozwala to wybraĘ nia napicia programującego.
połączeń lutowanych z obudową
jeden z dwch trybw programo-
Gniazdo do złącz igłowych 3x1
wania: Układy dodatkowe
do połączeń lutowanych
- Chip Erase - kasowanie pamici Na płytce drukowanej progra-
*Kabel 2-żyłowy 2m
programu: P3.457/U = L; matora znalazło si miejsce na
- Write Code Data - zapis do przycisk RESET, włączony stan- Kabel emulacyjny: wtyk
emulacyjny na kabel taśmowy
pamici programu: P3.457/U = H. dardowo midzy wejście RST
DIP20
Do programowania pamici ty- (Z1) i napicie +5V. Przy urucha-
Podstawki pod układy scalone:
pu FLASH konieczne jest poda- mianiu oprogramowania bardzo
DIL20 - 2 szt., DIL8 - 1szt., DIL16 -
nie napicia +12V na wejście przydatna jest mołliwośĘ rczne-
5 szt., DIL14 - 1 szt.
RST (Z1). Słułą temu dwa prze- go wyzerowania procesora, a nie
SW1: mikroswitch do druku
łączniki układu U3. Jeden stero- zawsze taki przycisk znajduje si
H=10mm
wany sygnałem PROG z wyjścia w uruchamianym układzie. Po za-
Q1: rezonator kwarcowy
P3.7 (U1) i drugi sterowany syg- programowaniu pamici progra-
11,0592MHz
nałem ABC. Na wyprowadzeniu mu wejście RST, podobnie jak
Z1: DIL20 precyzyjna lub ZIF (3M,
P3.2 pojawiają si w czasie pro- pozostałe wyprowadzenia proce-
Textool lub Aries)
gramowania impulsy zezwalające sora, jest przełączane na kabel
Z2: goldpin 2x10
- sygnał P3.2/U. Po zaprogramo- emulacyjny (Z2). Jeśli z urucha-
Z3: goldpin kątowy 1x3
waniu kałdego bajtu inkremento- mianego modułu przyjdzie na to
wany jest wewntrzny licznik wejście niski stan logiczny, pro- Elementy oznaczone * nie
adresu - Internal Address Coun- cesor rozpocznie wykonywanie wchodzą w skład kitu.
Elektronika Praktyczna 3/99
54
Programator - emulator mikrokontrolerów AT89Cx051
w układy nadzoru napicia wyjściowych. Wadą jest to, łe aby
Podstawowe cechy programatora
i watch-dog. Nie wszystkie tego ponownie uruchomiĘ procesor, na-
Zalety:
typu układy zezwalają na zwie- leły go wyzerowaĘ.
komunikuje się z komputerem łączem
ranie swojego wyjścia do napi- szeregowym RS232C;
zapewnia izolację galwaniczną między
cia zasilającego. Ograniczenia
komputerem i uruchamianym układem;
Do programatora dobudowano Bardzo oszczdna konstrukcja
nie wymaga specjalnego oprogramowania -
prosty, ale bardzo ułyteczny programatora narzuciła kilka
do obsługi wystarczają programy systemowe
wskanik zatrzymania procesora. ogranicze. Przede wszystkim
komputera;
na czas programowania odłącza procesor od
Wskanik ten tworzą dwie bramki mołliwy jest wybr tylko dwch
uruchamianego układu, po zaprogramowa-
NOR z układu U9 i dioda LED4 trybw programowania Chip Era-
niu przyłącza go z powrotem.
zielona z rezystorem szeregowym se i Write Code Data. Zatem nie
Wady:
R7. W czasie normalnej pracy pro- ma mołliwości programowania
zapisywany program musi być w postaci
cesora na wyjściu XTAL2 wyst- bitw zabezpieczających LB1
binarnej;
puje przebieg sinusoidalny o am- i LB2 (Write Lock Bit 1/2), od-
wymaga, aby pierwszy bajt programu miał
plitudzie bliskiej 5V i czstotli- czytania bajtu sygnatury (Read
wartość 02H;
wości zalełnej od dołączonego Signature Byte) czy nawet od- nie sprawdza, czy zapisywany program
zmieści się w pamięci;
kwarcu. Przebieg ten po przejściu czytania zapisanych bajtw pro-
nie weryfikuje poprawności zapisanego
przez bramk NOR (11,12,13) U9 gramu (Read Code Data) w celu
programu;
(ukształtowany do przebiegu pros- ich weryfikacji.
nie ma możliwości programowania bitów
tokątnego) zasila diod LED4, kt- Zasilanie programatora z uru- zabezpieczających;
ra świecąc sygnalizuje wykonywa- chamianego układu narzuca ko- jest zasilany z uruchamianego układu -
pobiera około 16mA w stanie spoczynku
nie programu. Jeśli procesor na- niecznośĘ zaprojektowania zasi-
i 26mA w czasie programowania.
potka rozkaz ustawiający bit PD lacza z niewielkim zapasem mo-
w rejestrze PCON, przejdzie cy. W rzadkich przypadkach, gdy
Podstawowe właściwości emulatora
w stan Power Down. W stanie to nie jest mołliwe, naleły za-
Zalety:
tym wewntrzny generator jest stosowaĘ dodatkową przejściw-
pracuje z rezonatorem kwarcowym układu
zatrzymany, a na wyjściu XTAL2, k, ktra umołliwi zasilanie pro- uruchamianego;
w pełni emuluje wszystkie piny procesorów
zgodnie ze schematem na rys. 3, gramatora z zewntrznego zasila-
AT89Cx051 łącznie z analogowymi
wystpuje wysoki stan logiczny, cza. Przejściwk taką mołna
wejściami komparatora;
ktry powoduje wygaszenie dio- zbudowaĘ z podstawki DIL20 na-
jest wyposażony w przycisk RESET zerujący
dy. Bramka (8,9,10) U9 blokuje sadzonej na wtyk emulacyjny.
procesor;
posiada optyczny wskaznik pracy/
wskanik na czas programowania Odcinek niebieskiego przewodu
zatrzymania procesora.
pamici FLASH. delikatnie dolutowujemy do pi-
Wady:
Programista umieszczając nu nr 10 podstawki. Drugi ko-
jest zasilany z uruchamianego układu -
w programie rozkaz: niec przewodu podłączamy do
pobiera około 33mA przy 12MHz w trybie
ORL PCON,#02H ;w asemblerze masy zasilacza. Do pinu nr 20
emulacji.
lub dolutowujemy kabel czerwony
PCON |= 0x02 /* w języku C */ i reszt tego pinu obcinamy.
mołe sprawdziĘ, czy procesor Czerwony przewd dołączamy do cony pin 20 wtyku nie zetknął
wykonując program doszedł do wyjścia +5V w zasilaczu. Tak si z odpowiadającym mu sty-
tego miejsca. Dodatkową zaletą przygotowany wtyk wkładamy kiem w podstawce układu uru-
jest, łe procesor po takim zatrzy- w podstawk układu uruchamia- chamianego.
maniu zachowuje stan portw nego zwracając uwag, aby skr- Tomasz Gumny, AVT
Elektronika Praktyczna 3/99
55


Wyszukiwarka

Podobne podstrony:
programator emulator mikrokontrolerów 89Cx051 (2)
Emulator procesorów 89cx051
emulator mikrokontrolerów PIC do PC
Emulator mikrokontrolerów AT89Cx051
avt 524 Programator USB mikrokontrolerów ATmega ISP
programowanie mikrokontrolerów
avt 515 Programator mikrokontrolerów AVR i AT89S8252
emulator DS5000 i innych mikrokontlorerów rodziny 51 2
Programowanie mikrokontrolerów za pomocą programatora USBasp » Majsterkowo pl
emulator DS5000 i innych mikrokontrolerów
avt 2502 Programator procesorów 89CX051 INNY
Konfiguracja pamięci mikrokontrolera 8051 dla programów napisanych w języku C
Prosty programator mikrokontrolerów AT89Cx051 AT89C5x
Podstawy programowania mikrokontrolerów AVR8 w środowisku AVR Studio 4
Programator mikrokontrolerów ATMEL AT89C2051 1051

więcej podobnych podstron