Programator WILLEMPROG 3 cz1 (3).pdf

(370 KB) Pobierz
Programator WillemProg 3.0, część 1 - AVT-5070
P R O J E K T Y Z S I E C I
Programator WillemProg 3.0
Programator
WillemProg 3.0,
część 1
AVT−5070
Ze wzglÍdu na prostotÍ
konstrukcji WillemProg jest
jednym z†najbardziej
popularnych wúrÛd amatorÛw
na ca³ym úwiecie
programatorÛw uniwersalnych.
Za jego pomoc¹ moøna
programowaÊ wszystkie
popularne pamiÍci
i†mikrokontrolery, a†liczba
obs³ugiwanych uk³adÛw ci¹gle
siÍ zwiÍksza.
Holandia na mapie elektronicz-
nego úwiata to miejsce szczegÛlne,
z†tego to bowiem kraju wywodz¹
siÍ prawdziwi guru uprawianej
przez nas dziedziny, jak twÛrca
Bascoma - Mark Alberts, twÛrca
ST6-Realizera - Raxo Actum, czy
teø Willem Kloosterhuis - twÛrca
m.in. os³awionego WillemProga.
W†artykule przedstawiamy jego
nieco zmodyfikowan¹ wersjÍ, dos-
konale dostosowan¹ do wspÛ³pra-
cy z†oryginalnym oprogramowa-
niem. Programator jest tani w†wy-
konaniu, prosty w†rozbudowie, op-
rogramowanie steruj¹ce jest ìinte-
ligentneî i†ci¹gle rozwijane. Jeøeli
wúrÛd CzytelnikÛw EP znajd¹ siÍ
chÍtni, przygotujemy polsk¹ wersjÍ
oprogramowania do WillemProga.
eksploatacyjne - konfiguracja pro-
gramatora jest doúÊ skomplikowa-
na i†wymaga rÍcznego ustawienia
co najmniej kilku prze³¹cznikÛw
i†jumperÛw.
Transfer danych do i†z†progra-
matora odbywa siÍ poprzez inter-
fejs rÛwnoleg³y. Uk³ady U2 i†U3
spe³niaj¹ rolÍ buforÛw danych
wprowadzanych do programatora,
przez uk³ad U3 przechodz¹ takøe
dwa bardzo istotne sygna³y ste-
ruj¹ce:
- CLK - taktuj¹cy rejestry-liczniki
adresÛw U4...U6,
- sygna³ oznaczony symbolem D,
dziÍki ktÛremu moøna szybko
wprowadziÊ do rejestrÛw
U4...U6 dowolny adres (wpro-
wadzany szeregowo, synchro-
nicznie z†zegarem CLK).
Odczyt danych z†programatora
odbywa siÍ szeregowo, za pomoc¹
rejestru U1. Sygna³y z†magistrali
danych s¹ podawane na wejúcia
P1...P8 tego uk³adu i†wyprowa-
dzane na z³¹cze Centronics po-
przez wyjúcie Q8 U1 i†bufor-
inwerter U12F. Dane odczytywane
s¹ w†takt sygna³u zegarowego po-
dawanego na wejúcie CLK US1
z†linii danych DO2.
Elementy U12E, U12D, Q1 i†Q5
pracuj¹ w†torze wprowadzania
i†odczytu danych do pamiÍci pro-
gramowanych szeregowo oraz mik-
rokontrolerÛw PIC. Sterowanie za-
³¹czeniem zasilania uk³adÛw
w†obudowach DIP32 oraz innych,
montowanych w†podstawkach
U10, U14, U15, PIC umoøliwiaj¹
elementy U12C, Q3. W³¹czenie
tego napiÍcia sygnalizuje dioda
LED Green. Tranzystory Q2, Q4
Opis uk³adu
Schemat elektryczny programa-
tora pokazano na rys. 1 . Czarnymi
prostok¹tami oznaczono podstaw-
ki dla programowanych uk³adÛw.
Jak ³atwo zauwaøyÊ, WillemProg
bez dodatkowych adapterÛw moøe
programowaÊ i†testowaÊ wiÍkszoúÊ
pamiÍci EEPROM, Flash, EPROM
oraz SRAM (w obudowach do 32
wyprowadzeÒ), szeregowych pa-
miÍci EEPROM z†interfejsami SPI/
Microwire i†I 2 C, a†takøe niektÛ-
rych typÛw mikrokontrolerÛw PIC.
Inne uk³ady wymagaj¹ stosowania
adapterÛw, z†ktÛrych kilka opisze-
my w†drugiej czÍúci artyku³u.
Budowa programatora jest bar-
dzo prosta, co uda³o siÍ uzyskaÊ
konstruktorowi dziÍki przerzuce-
niu wiÍkszoúci zadaÒ na oprog-
ramowanie. Z†prostoty uk³adowej
wynikaj¹ pewne niedogodnoúci
Elektronika Praktyczna 6/2002
45
32261859.043.png 32261859.044.png
Programator WillemProg 3.0
Rys. 1. Schemat elektryczny programatora
46
Elektronika Praktyczna 6/2002
32261859.045.png 32261859.046.png 32261859.001.png 32261859.002.png 32261859.003.png 32261859.004.png 32261859.005.png 32261859.006.png 32261859.007.png 32261859.008.png 32261859.009.png 32261859.010.png 32261859.011.png 32261859.012.png 32261859.013.png 32261859.014.png 32261859.015.png 32261859.016.png 32261859.017.png 32261859.018.png 32261859.019.png 32261859.020.png 32261859.021.png 32261859.022.png 32261859.023.png 32261859.024.png 32261859.025.png 32261859.026.png 32261859.027.png 32261859.028.png 32261859.029.png 32261859.030.png 32261859.031.png 32261859.032.png 32261859.033.png 32261859.034.png 32261859.035.png 32261859.036.png 32261859.037.png 32261859.038.png 32261859.039.png 32261859.040.png 32261859.041.png
 
Programator WillemProg 3.0
WYKAZ ELEMENTÓW
Rezystory
R1, R2, R5, R13, R14, R23, R24,
R26: 10k
Tab. 1. Zestawienie układów programowanych za pomocą WillemProga 3.0
(bez adapterów)
EPROM
27C64, 27C128, 27C256, 27C512, 27C010, 27C020, 27C040, 27C1001,
M27C1001, M27C2001, M27C4001, 27C080, M27C801, 2716, 2732,
2764, 27128, 27256, 27512, 27010, W27E512, W27E010, W27C010,
W27C020, W27C040, SST27SF256, SST27SF512, SST27SF010,
SST27SF020
R4, R6, R7, R9, R10, R15, R19,
R21, R22: 2,2k
EEPROM
28C65,28C64, 28C128, 28C256,28C512, 28C010, 28C020, 28C040,
M28C16A/17A, 28C16, XLS2816, AT28C256, AT28C010, AT28C040
R8, R25: 1,2k
R12: 4,7k
Flash
28F64, 28F128, 28F256, 28F512, 28F010 (MX28F1000), 28F020,
i28F001BX, 29F64, 29F128, 28C256, 29F512,29F010, 29F020, 29F040,
AT29C256, AT29C512, AT29C010A, AT29C020, AT29C040, AT29C040A,
W29EE512, W29EE011, W29EE012, W29C020 (128), W29C040,
PH29EE010 (W29EE011), AE29F1008 (AT29C010), AE29F2008
(AT29C020), SST28SF040A, LE28F4001
R16: 220
R18: 20k
Rx: 100k
EEPROM I 2 C 24Cxx
24C02, 24C04, 24C08, 24C16, 24C32, 24C64, 24C128, 24C256,
24C512
R−Pack 8x10k
Kondensatory
C1: 470
Microwire EEPROM
93C06, 93C46, 93LC46, 93C56, 93C57, 93C66, 93C76, 93C86,
93Cxx
93C06A, 93C46X, 93C56, 93C66, 93C76, 93C86
F/25V
C2: 220pF
C3: 47
MicroChip PIC
16C84, 16F84, 16F84A,16F627/16F628, 12C508, 12C509, 12C508A,
12C509A, 16C620/621/622, 16C710/711, 16CE623/624/625, oraz
poprzez złącze ICSP 16F870...16F877
F/35V
C4, C5: 47
Atmel Flash
AT49F512, AT49F010,AT49F020,AT49F040, M29F002x
F/16V
C6...C10: 100nF
Półprzewodniki
U1: 4014
U2, U3: 74HC367
U4...U6: 4015
U11: MC34063A
U12: 74HC04
U13: 7805
D1, D3, D8...D11: 1N4148
D4...D7, D12: 1N4001
Q1, Q2, Q5: BC547
Q3: BC327
Q4: BC557
LED, LED1, LED2: dowolne diody
LED
Różne
L1: 100
AT49Fxxx
SST39SF010,SST39F020,SST39SF040, AT49F001,AT49F002, Am29F512,
Am29F010, Am29F020, Am29F040, 29F002, 29F002T, Pm29F002T
EEPROM SPI
AT25010,020, 040, AT25080, 160, 320, 640, 128, 256, W95010....256,
AT25xxx, W95xxx
AT25HP256/512, AT25P1024
NVSRAM (DS12xx)
DS1220,DS1225Y, DS1230Y/AB, DS1245Y/AB, DS1249Y/AB
RAM (Test)
6116, 6264, 62256, 62512, 628128
D4...7, dziÍki ktÛremu do zasila-
nia programatora moøna stosowaÊ
zasilacze o†dowolnej polaryzacji
napiÍcia na wtyku. Jumpery J6
i†J7 umoøliwiaj¹ modyfikacjÍ na-
piÍÊ generowanych przez prze-
twornicÍ, za pomoc¹ J8 moøna
zmieniaÊ napiÍcie zasilania.
Jednym z†najwaøniejszych ele-
mentÛw s³uø¹cych do konfiguracji
programatora jest 12-pozycyjny
prze³¹cznik U9. Jego zadaniem
jest przekrosowanie niektÛrych li-
nii adresowych i†steruj¹cych do
odpowiednich wyprowadzeÒ pro-
gramowanego uk³adu.
Andrzej Gawryluk, AVT
Projekt przedstawiony w†arty-
kule opracowa³ Willem Klooster-
huis (http://www.willem.org). Wer-
sja przedstawiona w†artykule jest
zmodyfikowan¹, wersj¹ Willem-
Proga 3.0, w†pe³ni z†nim kom-
patybiln¹.
H
PRINTER: DB25F
J1: jumper 2x3
J2: jumper 2x4
J3, J6, J7, J8: jumpery 1x3
U7: podstawka precyzyjna DIP32
(lepiej ZIF32)
U9: DIP−switch 24
U10, U14, U15: podstawki
precyzyjne DIP8
PIC: podstawka precyzyjna DIP18
Program do uruchamiania i†tes-
towania p³ytki programatora: http:/
/scorpius.spaceports.com/~mpu51/
eprom/prog/ETESTDB25.zip.
Nowe wersje oprogramowania ste-
ruj¹cego: http://scorpius.space-
ports.com/~mpu51/eprom/win9x.html.
s³uø¹ do do³¹czenia napiÍcia za-
silaj¹cego V pp do wyprowadzenia
programowanego uk³adu. Jego w³¹-
czenie jest sygnalizowane za po-
moc¹ diody LED Red. Podwyøszo-
ne napiÍcie programuj¹ce jest wy-
twarzane przez przetwornicÍ im-
pulsow¹ wykonan¹ na uk³adzie
U11, natomiast napiÍcie zasilania
dla innych elementÛw zapewnia
scalony stabilizator U13. Na jego
wejúciu zastosowano mostek pros-
towniczy sk³adaj¹cy siÍ z†diod
Elektronika Praktyczna 6/2002
47
R3: 100k
R11: 15k
R17: 0,5
R20: 56
32261859.042.png
Zgłoś jeśli naruszono regulamin