26_28.pdf

(368 KB) Pobierz
Pr89AT - programator mikrokontrolerów '51 z pamięcią Flash. AVFT-518
Pr89AT − programator mikrokontrolerów '51 z pamięcią Flash
Pr89AT − programator
mikrokontrolerów '51
z pamięcią Flash
AVT−518
Opisany w†artykule
programator charakteryzuje siÍ
prostot¹ wykonania, niskim
kosztem, ³atwym w†obs³udze
programem steruj¹cym dla
Windows, duøymi
moøliwoúciami (programuje
wiÍkszoúÊ mikrokontrolerÛw
'51 firmy Atmel
w†obudowach DIP20/40), jest
sterowany przez interfejs
szeregowy oraz przystosowany
do zasilania z†portÛw
komputera.
Rekomendacje: idealne
narzÍdzie dla projektantÛw
systemÛw mikroprocesorowych
stosuj¹cych w†swoich
projektach g³Ûwnie
flashowe '51.
Prezentowany programator jest
przeznaczony do programowania
uk³adÛw†w†obudowach DIP40 (jak
np.: 89C51, 89C52, 89C55 w†wer-
sjach 5†V†lub 12 V) i†innych,
zgodnych z†tym standardem pro-
gramowania, oraz w†obudowach
DIP20 (jak np.: 89Cx051).
ìSercemî programatora jest mik-
rokontroler U1 AT89C51 (schemat
elektryczny pokazano na rys. 1 ).
Ustawia on, po odczytaniu rozka-
zu z†portu szeregowego wys³anego
przez komputer, odpowiednie ad-
resy, dane i†poziomy napiÍÊ pro-
gramuj¹cych oraz sygna³Ûw steru-
j¹cych. Komunikacja z†kompute-
rem odbywa siÍ z†maksymaln¹
prÍdkoúci¹, jak¹ pozwala uzyskaÊ
UART, czyli 115200 b/s. Uk³ad U2
dopasowuje poziomy TTL interfej-
su szeregowego do poziomÛw
zgodnych ze standardem RS232.
Dobrze jest zastosowaÊ uk³ad
MAX232A w szybszej wersji, ale
przy krÛtkich przewodach nie ma
to wiÍkszego znaczenia. Na dwÛch
bramkach NAND U3 wykonano
prosty generator przebiegu prosto-
k¹tnego o†czÍstotliwoúci ok. 20
kHz, ktÛry wraz z†tranzystorem
prze³¹czaj¹cym T1 (2N2369), d³a-
wikiem L1, diod¹ D1 i†kondensa-
torem C2 spe³nia rolÍ przetworni-
cy napiÍcia z†5†na 16 V. NapiÍcie
z†przetwornicy jest stabilizowane
za pomoc¹ diody Zenera D2. Tran-
zystory T2 i†T3 s³uø¹ do prze³¹-
czania napiÍcia programuj¹cego po-
dawanego na wejúcia Vpp, ktÛre
moøe przyjmowaÊ jedn¹ z†wartoúci:
- 0,2 V†- tranzystor T3 nasycony,
co odpowiada zeru logicznemu,
- 4†V†- tranzystor T2 nasycony,
a†T3 zablokowany, co odpowia-
da stanowi logicznemu ì1î,
- 12 V†- T2 i†T3 zablokowane, co
umoøliwia uzyskanie napiÍcia
programowania Vpp.
Uwaga! Tranzystory T2 i†T3
powinny mieÊ moøliwie duøy
wspÛ³czynnik wzmocnienia (przy-
najmniej 250). W†innym przypad-
ku tranzystory mog¹ siÍ nie na-
syciÊ i†programator nie bÍdzie
dzia³aÊ poprawnie!
NapiÍcie zasilania programato-
ra powinno mieÊ wartoúÊ 5†V.
Moøna je pobieraÊ bezpoúrednio
z†jednego z†portÛw komputera
( rys. 2 ): portu klawiatury PS/2,
USB lub GamePortu. Najproúciej
jest pod³¹czyÊ siÍ do portu USB,
ale w†starszych komputerach tego
portu nie by³o, wiÍc w†takich
przypadkach proponujÍ wykorzys-
taÊ port joysticka. W†ostatecznoú-
ci, gdy nie mamy do dyspozycji
portu USB ani portu joysticka,
moøna pobraÊ zasilanie z†portu
klawiatury wykonuj¹c prost¹
przejúciÛwkÍ.
Pr89AT w wersji 2.2 umożliwia
programowanie następujących
mikrokontrolerów:
26
Elektronika Praktyczna 7/2003
P R O J E K T Y
32584616.051.png 32584616.055.png
Pr89AT − programator mikrokontrolerów '51 z pamięcią Flash
podstawek doúÊ szybko zuøywaj¹
siÍ i†nie zapewniaj¹ styku o od-
powiedniej jakoúci.
Uruchomienie naleøy rozpocz¹Ê
od przetwornicy. Przetwornica
nieobci¹øona (bez diody stabiliza-
cyjnej D2 12V) powinna na wyj-
úciu dawaÊ oko³o 16 V†lub wiÍcej.
Jeøeli napiÍcie jest niøsze, na-
leøy†zmieniÊ czÍstotliwoúÊ genera-
tora poprzez zmianÍ pojemnoúci
kondensatora C1 do uzyskania
odpowiedniego napiÍcia. Jeøeli to
nie pomoøe, naleøy zmieniÊ d³a-
wik L1.
NastÍpnie naleøy wlutowaÊ po-
zosta³e elementy i†sprawdziÊ czy
steruj¹c tranzystorami T2, T3
otrzymujemy odpowiednie napiÍ-
cia odpowiadaj¹ce zeru logiczne-
mu, jedynce i†napiÍciu programo-
wania.
Oprogramowanie
Na potrzeby programatora opra-
cowa³em program steruj¹cy dla
Windows. Program korzysta ze
standardowej biblioteki API
i†wspÛ³pracuje z†przejúciÛwkami
USB->RS232.
Instalacja programu odbywa siÍ
automatycznie za pomoc¹ progra-
mu InstallSchield Express, ktÛry
³atwo przeprowadzi nas przez
instalacjÍ. Po zainstalowaniu kli-
kamy na ikonkÍ Pr89AT i†urucha-
miamy program. Po uruchomieniu
pokaøe siÍ okno, jak na rys. 4a .
Aby otworzyÊ plik HEX, klika-
my na ikonkÍ odczyt i†wybieramy
plik. Gdy wybierzemy plik w†dol-
nym oknie, to pojawi siÍ zawar-
toúÊ pliku w†kodzie szesnastko-
Rys. 1. Schemat elektryczny programatora
Montaø i†uruchomienie
Na rys. 3 przedstawiono sche-
mat montaøowy p³ytki programa-
tora. Rezystory podci¹gaj¹ce
R7...R14 znajduj¹ siÍ pod pod-
stawk¹ mikrokontrolera, podobnie
jak kondensator C3. Rezysto-
rÛw†tych moøna nie wlutowywaÊ,
bez nich rÛwnieø programator
dzia³a poprawnie, ale dla pewnoú-
ci lepiej je tam umieúciÊ. Dla
programowanych uk³adÛw propo-
nujÍ zastosowaÊ podstawki precy-
zyjne lub ZIF. Styki zwyk³ych
Rys. 2. Schemat podłączenia
programatora do gniazd PC,
z których można pobierać napięcie
zasilające
Elektronika Praktyczna 7/2003
27
32584616.056.png 32584616.057.png 32584616.001.png 32584616.002.png 32584616.003.png 32584616.004.png 32584616.005.png 32584616.006.png 32584616.007.png 32584616.008.png 32584616.009.png 32584616.010.png 32584616.011.png 32584616.012.png 32584616.013.png 32584616.014.png 32584616.015.png 32584616.016.png 32584616.017.png 32584616.018.png 32584616.019.png 32584616.020.png 32584616.021.png 32584616.022.png 32584616.023.png 32584616.024.png 32584616.025.png 32584616.026.png 32584616.027.png 32584616.028.png 32584616.029.png 32584616.030.png 32584616.031.png 32584616.032.png 32584616.033.png 32584616.034.png 32584616.035.png 32584616.036.png 32584616.037.png 32584616.038.png 32584616.039.png 32584616.040.png 32584616.041.png 32584616.042.png 32584616.043.png
Pr89AT − programator mikrokontrolerów '51 z pamięcią Flash
WYKAZ ELEMENTÓW
Rezystory
R1: 220
R7...R14: 10k
Kondensatory
C1, C3: 220nF
C2: 100
F/25V
C4...C7: 22
µ
µ
F/16V
F/16V
C9: 100nF
C10...C13: 30pF
Półprzewodniki
D1: MBR1060, 1N5819 lub inna
dioda Schottky’ego min. 40V/
100mA
D2: 12V
D3: 3,6V
T1: 2N2369
T2, T3: BC527−III
U1: AT89C51 zaprogramowany
U2: MAX232
U3: 7400
Różne
L1: 4,7mF
Z1: DB9−F
X1: 3,6864MHz
X2: 12MHz
P2: podstawka precyzyjna DIP20
P1: podstawka precyzyjna DIP40
µ
Rys. 3. Schemat monażowy płytki programatora
wym oraz w†kodzie ASCII ( rys.
4b ). Aby zapisaÊ na dysku zawar-
toúÊ bufora (np. z zawartoúci¹
pamiÍci odczytan¹ z mikrokontro-
lera), klikamy na ikonkÍ zapisz
i†zapisujemy dane w†pliku o†poda-
nej nazwie i†lokalizacji. Øeby przy-
spieszyÊ odczyt, wystarczy klikn¹Ê
na plik HEX w†dowolnym mene-
døerze plikÛw, a†program urucho-
mi siÍ automatycznie i†za³aduje
dane. Wymaga to jednak wczeú-
niejszego ustawienia w†Windows
domyúlnego programu dla plikÛw
HEX. Program steruj¹cy prac¹ pro-
gramatora nie odczytuje plikÛw
BIN, ale ³atwo je moøna konwer-
towaÊ na postaÊ HEX za pomoc¹
ogÛlnie dostÍpnych programÛw
(np. http://www.ep.com.pl/ftp/
bin2hex.exe , http://www.ep.com.pl/
ftp/hex2bin.exe ).
Kolejne ikonki znajduj¹ce siÍ
w†menu umoøliawiaj¹ szybkie pro-
gramowanie, odczytywanie i†pe³-
n¹ blokadÍ programowanego uk³a-
du. W†pasku Main znajduje siÍ
wywo³anie dodatkowych funkcji:
kasowanie pamiÍci, weryfikacja
jej zawartoúci, odczyt sygnatur,
blokady, wybÛr uk³adu czy wybÛr
numeru portu COM. Jeøeli w†ok-
nie wyboru uk³adu ustawimy Au-
tomatycznie , to programator po-
bierze informacje o†programowa-
nym mikrokontrolerze z†jego syg-
natury. W†razie uszkodzenia syg-
natury, co ma czÍsto miejsce przy
pracy z†ìma³ymiî '51, naleøy rÍcz-
nie podaÊ typ uk³adu.
Programator oprÛcz uk³adÛw,
ktÛre wymieniono na liúcie pro-
gramu, moøe programowaÊ takøe
mikrokontrolery innych producen-
tÛw (Philipsa, Winbonda). W†ta-
kim przypadku naleøy wybraÊ
rÍcznie Inny uk³ad . Maksymalny
obszar pamiÍci, jaki moøe zapro-
gramowaÊ Pr89AT, wynosi 32 kB.
Ograniczenie wynika z†potrzeby
maksymalnego uproszczenia bu-
dowy programatora, a†liczba por-
tÛw†I/O zastosowanego mikrokon-
trolera jest o†jeden za ma³a. Szko-
da, bo mÛg³by zostaÊ pokryty ca³y
standardowy dla '51 obszar pa-
miÍci programu do 64 kB i†by³oby
wÛwczas moøliwe programowanie
m.in. '51 w†wersjach RD2.
Podczas zapisu do pamiÍci
Flash programator od razu wery-
fikuje, czy nast¹pi³o poprawne
zapisanie. Daje nam to gwarancjÍ,
øe programowanie przebiega po-
prawnie.
Marek Kopeæ
Rys. 4. Okno programu Pr89AT po uruchomieniu (a), po wczytaniu pliku
HEX (b)
Wzory p³ytek drukowanych w for-
macie PDF s¹ dostÍpne w Internecie
pod adresem: http://www.ep.com.pl/
?pdf/lipiec03.htm oraz na p³ycie
CD-EP7/2003B w katalogu PCB .
28
Elektronika Praktyczna 7/2003
R2, R4...R6: 1k
R3: 1,5k
C8: 220
32584616.044.png 32584616.045.png 32584616.046.png 32584616.047.png 32584616.048.png 32584616.049.png 32584616.050.png 32584616.052.png 32584616.053.png 32584616.054.png
Zgłoś jeśli naruszono regulamin