programator procesorów AVR 1.pdf

(272 KB) Pobierz
Programator procesorów AVR, cz. 1. AVT-812
Programator procesorów AVR
Programator procesorów
AVR, część 1
kit AVT−812
Procesory jednouk³adowe
zrobi³y prawdziw¹ karierÍ
w†úwiecie elektroniki. Sukces
ten wi¹øe siÍ z†rozwojem
elektronicznego sprzÍtu
powszechnego uøytku. Im
urz¹dzenia stawa³y siÍ
³atwiejsze w†uøyciu, bardziej
sprawne
i niezawodne, tym bardziej
ros³o zapotrzebowanie na
elementy steruj¹ce ich prac¹,
czyli mikrokontrolery. Dotyczy
to takøe uk³adÛw automatyki
przemys³owej. Dziú trudno
spotkaÊ urz¹dzenie
elektroniczne bez
inteligentnego sterownika,
bÍd¹cego dalekim krewnym
duøych komputerÛw.
RozwÛj elekreonicznego sprzÍtu
powszechnego uøytku i†moøliwoúÊ
ulokowania w nim swoich wyro-
bÛw stanowi³a silny bodziec dla
wielu firm zajmuj¹cych siÍ pro-
dukcj¹ uk³adÛw wielkiej skali in-
tegracji.
Pocz¹tkowo na rynku domino-
wa³y uk³ady z†grupy 8049, nastÍp-
nie s³ynny 8051 produkowany
najpierw przez Intela oraz mikro-
sterowniki firmy Motorola. W†la-
tach 90. pojawi³y siÍ nowe rodza-
je procesorÛw, nierzadko bardzo
wyspecjalizowanych i†zminiatury-
zowanych.
Firma Atmel zaistnia³a na ryn-
ku najpierw ze swoj¹ odmian¹
sterownika '51, w†ktÛrym zast¹-
piono niewygodn¹, kasowan¹ ul-
trafioletem pamiÍÊ EPROM, elek-
trycznie programowan¹ pamiÍci¹
FLASH EEPROM. Taki sposÛb
zapisu kodu programu do pamiÍci
sterownika jest bardzo wygodny,
zw³aszcza na etapie pracy nad
programem i†w†produkcji ma³ose-
ryjnej. W†przypadku polskiego
rynku moøna stwierdziÊ, øe pro-
cesory te znalaz³y na nim swoje
miejsce. Od ponad dwÛch lat
Atmel promuje now¹ rodzinÍ pro-
cesorÛw ochrzczonych wspÛlnym
mianem AVR.
Procesory wchodz¹ce w†sk³ad
rodziny rÛøni¹ siÍ wielkoúci¹
i†moøliwoúciami, jednak kilka
cech pozostaje wspÛlnych. Naj-
waøniejsz¹ z†nich jest oparcie we-
wnÍtrznej budowy sterownikÛw
na architekturze RISC, bazuj¹cej
na uproszczonej liúcie rozkazÛw
wykonywanych najczÍúciej pod-
czas jednego cyklu zegarowego.
Powoduje to znaczne przyúpiesze-
nie pracy uk³adu, w†ktÛrym jeden
cykl zegara taktuj¹cego odpowiada
jednemu cyklowi rozkazowemu.
Okreúlenie ìuproszczona lista roz-
kazÛwî wcale nie oznacza, øe jest
ona krÛtka, poniewaø wzbogacono
j¹ o†ca³y zestaw skokÛw warun-
kowych i†trybÛw adresowania.
W†zwi¹zku z†tym wszystkie pro-
cesory wyposaøone s¹ w†rozbudo-
wany zestaw rejestrÛw uniwersal-
nych bezpoúrednio wspÛ³pracuj¹-
cych z†akumulatorem, co dodatko-
60
Elektronika Praktyczna 4/99
P R O J E K T Y
30553675.047.png 30553675.048.png
Programator procesorów AVR
Rys. 1. Schemat elektryczny urządzenia.
Elektronika Praktyczna 4/99
61
30553675.049.png 30553675.050.png 30553675.001.png 30553675.002.png 30553675.003.png 30553675.004.png 30553675.005.png 30553675.006.png 30553675.007.png 30553675.008.png 30553675.009.png 30553675.010.png 30553675.011.png 30553675.012.png 30553675.013.png 30553675.014.png 30553675.015.png 30553675.016.png 30553675.017.png 30553675.018.png 30553675.019.png 30553675.020.png 30553675.021.png 30553675.022.png
Programator procesorów AVR
wo zwiÍksza szybkoúÊ dzia³ania
uk³adÛw.
Producent okreúla moc oblicze-
niow¹ sterownikÛw na rÛwn¹
1MIPS przy czÍstotliwoúci zegara
1MHz. Maksymalna czÍstotliwoúÊ
zegara dla wiÍkszoúci typÛw pro-
cesorÛw AVR zawiera siÍ w†prze-
dziale 10..24MHz. Kolejn¹ cech¹
wspÛln¹ jest wyposaøenie prawie
wszystkich typÛw sterownikÛw
w†wewnÍtrzne pamiÍci RAM
i†EEPROM oraz sprzÍtowy zegar
watchdoga. Wszystkie procesory
posiadaj¹ szeregowy interfejs SPI
umoøliwiaj¹cy w†prosty sposÛb
ich programowanie oraz zapisy-
wanie i†odczytywanie danych do
i†z†wewnÍtrznej pamiÍci EEPROM.
Linie portÛw wyjúciowych proce-
sorÛw pozwalaj¹ na bezpoúrednie
sterowanie rÛønych uk³adÛw zew-
nÍtrznych, np. diod LED, ponie-
waø w†stanie niskim potrafi¹ przy-
j¹Ê pr¹d o†wartoúci nawet 20mA.
Konstruktorzy duøo uwagi po-
úwiÍcili redukcji mocy pobieranej
przez sterowniki, co umoøliwia
ich stosowanie w†sprzÍcie zasila-
nym bateryjnie.
PobÛr pr¹du w†czasie normal-
nej pracy wynosi przeciÍtnie kilka
miliamperÛw, natomiast w†czasie
uúpienia, gdy podtrzymywana jest
zawartoúÊ wewnÍtrznych rejest-
rÛw i†aktywny jest tylko wewnÍ-
trzny zegar watchdoga, pobÛr pr¹-
du wynosi jedynie 50
Rys. 2. Przebieg sygnałów w czasie transmisji.
A.
Kolejn¹ interesuj¹c¹ cech¹
wszystkich procesorÛw jest moø-
liwoúÊ zakoÒczenia trybu uúpienia
poprzez podanie odpowiedniego
poziomu napiÍcia na linii portu
P3 i†wygenerowanie przerwania.
Mamy nadziejÍ, øe ten krÛtki
wstÍp zachÍci Was do bliøszego
poznania procesorÛw AVR. Aby
u³atwiÊ Wam nieco to zadanie,
w†drugiej czÍúci artyku³u omÛwimy
nieco bardziej szczegÛ³owo moøli-
woúci poszczegÛlnych uk³adÛw tej
rodziny, a†teraz przejdziemy do
prezentacji konstrukcji progra-
matora, opisywanego w artykule.
Wszystkie sterowniki z†rodziny
AVR mog¹ byÊ programowane na
dwa sposoby. Pierwszy z†nich,
ktÛry moøna okreúliÊ jako trady-
cyjny, wykorzystuje do wymiany
danych pomiÍdzy programatorem,
a†programowanym procesorem je-
den z†jego portÛw, a†kilka dodat-
kowych sygna³Ûw podawanych na
linie pozosta³ych portÛw steruje
ca³ym procesem. SposÛb ten wy-
maga zaangaøowania wielu linii
danych. Jeøeli programator ma
obs³uøyÊ procesory w†rÛønych
obudowach i†o†rÛønej liczbie wy-
prowadzeÒ, trzeba siÍ liczyÊ z†ko-
niecznoúci¹ stosowania adapterÛw
lub multipleksowaniem wyprowa-
dzeÒ programatora, w†zaleønoúci
od typu aktualnie programowane-
go procesora.
Drugi sposÛb wi¹øe siÍ z†wyko-
rzystaniem w†kaødym typie pro-
cesora specjalnego szeregowego in-
terfejsu o†zredukowanej liczbie
wyprowadzeÒ, w†tym przypadku
trzech. Zastosowanie do progra-
mowania jedynie trzech ìdrutÛwî
- SPI (tak naprawdÍ dochodzi
jeszcze zasilanie, linia RESET oraz
doprowadzenia zegara) bardzo
upraszcza procedurÍ programowa-
nia, a†w†pewnych warunkach
umoøliwia przeprogramowanie
procesora nawet wtedy, gdy znaj-
duje siÍ w†systemie, w†ktÛrym
pracuje.
Interfejs SPI sk³ada siÍ z†nastÍ-
puj¹cych linii sygna³owych: linii
zegara synchronizuj¹cego transfer
informacji SCK, linii danych wej-
úciowych MOSI i†linii danych
wyjúciowych MISO. Przebieg syg-
na³Ûw na tych trzech liniach
w†czasie transmisji pokazano na
rys. 2 .
Programowanie polega na wy-
s³aniu lini¹ MOSI kodÛw steru-
j¹cych i†ewentualnie danych, ktÛ-
re okreúl¹ sposÛb w†jaki ma siÍ
zachowaÊ programowany uk³ad.
Kody s¹ to 3†lub 4†bajty wysy³ane
bit po bicie, z†najstarszym bitem
jako pierwszym. Odczytane dane
procesor wysy³a w†ten sam spo-
sÛb lini¹ MISO, z†najstarszym bi-
tem jako pierwszym.
Kody steruj¹ce wpisywane s¹
do procesora podczas narastaj¹ce-
go zbocza zegara SCK, natomiast
dane pojawiaj¹ce siÍ na linii
MISO mog¹ byÊ odczytane pod-
czas opadaj¹cego zbocza impulsu
zegarowego. Sygna³y na liniach
MOSI i†MISO mog¹ siÍ zmieniaÊ
jedynie podczas stanu niskiego na
linii zegarowej SCK.
Procesory AVR wyposaøone
w†interfejs SPI reaguj¹ na kilka
kodÛw steruj¹cych. Ich format
w†przypadku procesora 90S2313
pokazano w tab. 1 .
W†celu rozpoczÍcia korzystania
z†interfejsu SPI naleøy spe³niÊ
kilka prostych warunkÛw. Przed
podaniem napiÍcia zasilaj¹cego
trzeba podaÊ na wyprowadzenia
procesora RESET i†SCK stan niski
oraz do³¹czyÊ do wyprowadzeÒ
XTAL rezonator kwarcowy o†no-
minalnej czÍstotliwoúci lub podaÊ
sygna³ taktuj¹cy na wyprowadze-
nie XTAL1. Po w³¹czeniu zasila-
nia naleøy odczekaÊ 20ms, a†na-
stÍpnie wys³aÊ cztery bajty roz-
kazu Programing enable . Od tego
momentu procesor znajduje siÍ
w†trybie programowania. Zapisa-
nie do pamiÍci procesora nowego
kodu programu wymaga wczeú-
niejszego wykasowania zawartoúci
pamiÍci FLASH, co nast¹pi po
wys³aniu rozkazu Chip erase ,
a†nastÍpnie odczekaniu 10ms na
zakoÒczenie operacji kasowania
pamiÍci.
Jednoczeúnie z†pamiÍci¹
FLASH wykasowane zostan¹
wszystkie dane zapisane w†pamiÍ-
ci EEPROM procesora. Zapis da-
nych do pamiÍci programu wyko-
nuje siÍ za pomoc¹ rozkazu Write
Program Memory. Litery a, b
oznaczaj¹ wyraøony binarnie ad-
res komÛrki pamiÍci, do ktÛrej
zostanie dokonany zapis. Liczba
znacz¹cych bitÛw w†przypadku
procesorÛw o†wiÍkszej pojemnoúci
Opis uk³adu
Schemat elektryczny programa-
tora pokazano na rys. 1 . Jego
budowa jest bardzo prosta, ale
moøna za jego pomoc¹ zaprogra-
mowaÊ praktycznie kaødy rodzaj
procesora AVR. Wynika to z†faktu
zastosowania w†nim szeregowego
interfejsu SPI.
62
Elektronika Praktyczna 4/99
30553675.023.png
Programator procesorów AVR
Rys. 3. Rozmieszczenie elementów na płytce drukowanej.
macie ASCII) okreúlaj¹cy rodzaj
rozkazu, nastÍpnie jego paramet-
ry, dane, a†na koÒcu bajt sumy
kontrolnej. Bajt ten powstaje po-
przez wykonanie operacji XOR na
wszystkich kolejnych bajtach roz-
kazu z†wy³¹czeniem oczywiúcie
samego bajtu sumy kontrolnej. Po
prawid³owym wykonaniu kaødej
operacji programator potwierdza
ten fakt wysy³aj¹c w†odpowiedzi
literÍ ìAî. Wys³anie jakiegokol-
wiek innego znaku lub brak od-
powiedzi powinien byÊ interpre-
towany przez komputer steruj¹cy
jako b³¹d.
Rozkazy steruj¹ce i†opis po-
szczegÛlnych bajtÛw:
1.Rozkaz ustawienia parametrÛw
programatora:
ìSî abk 0 c
ìSî - kod ASCII (53h) iden-
tyfikatora rozkazu
ab - dwa bajty okreúlaj¹ce
adres pocz¹tkowy, od ktÛrego pro-
gramator rozpocznie odczytywanie
lub zapisywanie danych do pro-
cesora
k - parametr okreúlaj¹cy sposÛb
pracy programatora. Bajt ten moøe
przyjmowaÊ nastÍpuj¹ce wartoúci:
0†- nastÍpne rozkazy odczy-
tu lub zapisu bÍd¹ dotyczy³y
pamiÍci programu procesora
1†- nastÍpne rozkazy bÍd¹
dotyczy³y pamiÍci EEPROM pro-
cesora
2†- programator powinien
uaktywniÊ bity zabezpieczaj¹ce
programowanego procesora
FFh - programator powinien
siÍ zresetowaÊ
0 - bajt o†sta³ej wartoúci
rÛwny zero
c - bajt sumy kontrolnej
pamiÍci FLASH bÍdzie oczywiúcie
wiÍksza niø w†przyk³adzie odno-
sz¹cym siÍ do procesora 90S2313.
Poniewaø format rozkazÛw proce-
sorÛw AVR jest 16-bitowy, a†prze-
sy³ane bajty danych s¹ 8-bitowe
(4 bajt rozkazu oznaczony literami
ìiî), identyfikator ìHî okreúla,
ktÛra po³Ûwka kodu jest aktualnie
transmitowana. Starsza i†m³odsza
po³Ûwka kodu rozkazu zapisywa-
ne s¹ pod jednakowym adresem
a, b .
W†czasie odczytu pamiÍci pro-
cesora adresowanie z†wykorzysty-
waniem bitu ìHî jest identyczne
jak podczas zapisu. RÛønica po-
lega na tym, øe po wys³aniu
3†bajtÛw lini¹ MOSI, odczytywany
bajt danych pojawi siÍ na linii
MISO.
Do zapisu i†odczytu danych do
i†z†pamiÍci EEPROM procesora
s³uø¹ rozkazy Write EEPROM Me-
mory i† Read EEPROM Memory ,
a†ca³a wymiana danych przebiega
podobnie jak w†przypadku pamiÍ-
ci programu. RÛønica polega na
tym, øe przed nowym zapisem nie
ma koniecznoúci czyszczenia pa-
miÍci rozkazem Chip erase .
Zaadresowana komÛrka EEP-
ROM jest automatycznie czyszczo-
na przed zapisem nowych da-
nych. NastÍpnie trzeba odczekaÊ
4ms przed wys³aniem kolejnego
kodu interfejsem SPI.
Rozkaz Write Lock Bits pozwa-
la zaprogramowaÊ bity zabez-
pieczeÒ chroni¹ce obie pamiÍci
przed moøliwoúci¹ doprogramo-
wania nowych danych, a†takøe
przed ich odczytaniem. Bity s¹
aktywne, gdy przyjmuj¹ wartoúÊ
0. Bity mog¹ byÊ skasowane je-
dynie w†wyniku dzia³ania rozkazu
Chip erase . Rozkaz Read Device
Code odczytuje kod typu proce-
sora. ZakoÒczenie sesji programo-
wania wymaga wy³¹czenia zasila-
nia oraz pozostawienia wyprowa-
dzenia RESET na poziomie wy-
sokim, gdy zasilanie zostanie w³¹-
czone ponownie.
DziÍki temu, øe programator
wykorzystuje w†swoim dzia³aniu
interfejs SPI, jego budowa moøe
byÊ stosunkowo prosta. Zasadni-
czym elementem urz¹dzenia jest
procesor 89C2051, ktÛry kontrolu-
je przep³yw danych liniami inter-
fejsu oraz w³¹cza i†wy³¹cza prze-
kaünik PK1 do³¹czaj¹cy napiÍcie
zasilania do programowanego pro-
cesora. Prac¹ programatora steruje
komputer poprzez standardow¹ li-
niÍ RS do³¹czan¹ do gniazda P1.
Parametry transmisji portem RS
to: szybkoúÊ 9600 bodÛw, 8†bitÛw
danych, brak bitu parzystoúci oraz
1†bit stopu. Uk³ad scalony U2
dokonuje konwersji poziomÛw lo-
gicznych sygna³Ûw do standardu
TTL.
W†za³oøeniu programator mia³
byÊ jak najprostszym urz¹dzeniem
wspÛ³pracuj¹cym z†zewnÍtrznym
komputerem klasy PC. Z†tego po-
wodu oprogramowanie procesora
U1 potrafi jedynie obs³ugiwaÊ
interfejs SPI oraz rozrÛønia 3†roz-
kazy steruj¹ce, co zupe³nie wy-
starczy, aby prawid³owo zapisaÊ
i†odczytaÊ dane z†wszystkich pro-
cesorÛw AVR.
Kaødy z†rozkazÛw sk³ada siÍ
z†kilku bajtÛw danych. Najpierw
wysy³any jest znak litery (w†for-
2.Rozkaz odczytu danych:
ìRî xc
ìRî - kod ASCII (52h) iden-
tyfikatora rozkazu
x - liczba bajtÛw danych, ktÛre
maj¹ byÊ odczytane z†pamiÍci
procesora
c - bajt sumy kontrolnej
3.Rozkaz zapisu danych do pa-
miÍci procesora:
ìWî xd...dc
ìWî - kod ASCII (57h) iden-
tyfikatora rozkazu
x - liczba bajtÛw danych d ,
ktÛre maj¹ byÊ zapisane do pa-
miÍci procesora (FLASH lub
EEPROM, co zaleøy od paramet-
Elektronika Praktyczna 4/99
63
30553675.024.png 30553675.025.png 30553675.026.png 30553675.027.png 30553675.028.png 30553675.029.png 30553675.030.png 30553675.031.png 30553675.032.png 30553675.033.png 30553675.034.png 30553675.035.png 30553675.036.png 30553675.037.png 30553675.038.png 30553675.039.png 30553675.040.png 30553675.041.png 30553675.042.png 30553675.043.png 30553675.044.png 30553675.045.png
Programator procesorów AVR
ru k wys³anego we wczeúniej-
szym rozkazie ustawienia para-
metrÛw)
d - bajty danych, ktÛrych liczba
zosta³a okreúlona parametrem x .
Liczba danych moøe byÊ dowolna
lecz nie wiÍksza niø 32
c - bajt sumy kontrolnej
z†podstawki. Wys³anie polecenia
resetu programatora powoduje na-
tychmiastowe roz³¹czenie stykÛw
i†przejúcie programatora w†stan
oczekiwania na kolejny rozkaz.
Przyk³adowa sekwencja rozka-
zÛw, dotycz¹ca zapisania do pa-
miÍci FLASH nowego programu
dla sterownika AVR, a†potem
sprawdzenia czy zapis zosta³ do-
konany poprawnie, moøe wygl¹-
daÊ nastÍpuj¹co:
S, 0, 0, 0, 0, c† (ustawienie
pocz¹tkowego adresu zapisu na
00h i†typu pamiÍci na FLASH)
W,20h, d,...,d,c (zapis bloku 32
bajtÛw)... (zapis kolejnych blokÛw
danych)
W,32, d,...,d,c
S,0,0,FFh, c† (reset programato-
Kondensatory
C1, C5, C6, C7, C10: 47
F/16V
C2, C3, C11, C12: 27pF
C8, C4: 100nF
C10: 2,2
F
Programator po odebraniu roz-
kazu ustawienia parametrÛw, prze-
de wszystkim ustawia swÛj we-
wnÍtrzny licznik danych zgodnie
z†wartoúci¹ przekazan¹ parametra-
mi ab . Licznik ten po kaødym
zapisie lub odczycie pamiÍci pro-
cesora AVR jest zwiÍkszany o†je-
den. Z†tego powodu ustawienie
pocz¹tkowego adresu, np. podczas
odczytu ca³ej dostÍpnej pamiÍci
FLASH procesora, moøna przepro-
wadziÊ tylko raz, wysy³aj¹c na
pocz¹tku rozkaz S abk 0 c . Progra-
mator zapamiÍtuje takøe parametr
k i†do czasu jego zmiany wszelkie
odczyty lub zapisy bÍd¹ dotyczyÊ
wybranego typu pamiÍci.
Potwierdzenie wykonania roz-
kazu przez programator w†przy-
padku rozkazu odczytu jest nieco
zmodyfikowane. Po wys³aniu ko-
du litery ìAî (41h) programator
wysy³a takøe odczytane dane
w†liczbie okreúlonej w†rozkazie
odczytu parametrem x , do³¹czaj¹c
na koÒcu bajt sumy kontrolnej c .
Po wykonaniu kaødego rozkazu
odczytu danych lub zapisu, pro-
gramator przez ok. 0,6s podtrzy-
muje w†stanie za³¹czenia przekaü-
nik PK1. Jeøeli w†tym czasie nie
zostanie odebrany kolejny rozkaz,
styki przekaünika zostan¹ roz³¹-
czone i†programowany procesor
AVR bez obaw moøna wyj¹Ê
F/25V
Półprzewodniki
D1, D2: LED czerwona i zielona
D3: 1N4004
U1: 89C2051 zaprogramowany
U2: MAX232
U3: 78L05
Różne
PK1: przekaźnik miniaturowy 5V
typu OMRON
P1: złącze DB9 żeńskie do druku
X1: 11,059MHz
X2: 4MHz
U4: precyzyjna podstawka DIP20
U5: precyzyjna podstawka DIP40
U6: precyzyjna podstawka DIP8
ra)
S,0,0,0,0, c
R,20h, c (odczyt danych z†pa-
miÍci programowanego procesora
w†celu weryfikacji)
R,20h, c
S,0,0,FFh, c† (reset programato-
ra)
Podany opis powinien okazaÊ
siÍ wystarczaj¹cy do napisania
w³asnego programu steruj¹cego
prac¹ programatora. Wszystkim,
ktÛrzy nie maj¹ ochoty tworzyÊ go
samodzielnie proponujemy jego
funkcjonaln¹, prost¹ wersjÍ pracu-
j¹c¹ w†úrodowisku Windows95
(wchodzi w†sk³ad kitu).
rÛw AVR na czas programowania.
Zastosowanie 3†typÛw podstawek
pozwala programowaÊ niemal
wszystkie typy uk³adÛw. Dodatko-
wo sygna³y interfejsu SPI wypro-
wadzone s¹ na gniazdo JP2. Pro-
cesor przed rozpoczÍciem progra-
mowania lub czytania naleøy
umieúciÊ w†podstawce z†odpowia-
daj¹c¹ mu liczb¹ stykÛw (na fo-
tografii pokazana jest starsza wer-
sja programatora, jedynie z†dwoma
typami podstawek). Wczeúniej p³yt-
kÍ programatora naleøy po³¹czyÊ
z†odpowiednim gniazdem portu RS
komputera standardowym kablem
oraz zasiliÊ napiÍciem sta³ym
o†wartoúci 8..12V do³¹czanym do
gniazda JP1.
Po uruchomieniu na kompute-
rze programu steruj¹cego i†rozpo-
czÍciu czytania lub zapisu proce-
sora AVR, przekaünik na p³ytce
zostanie za³¹czony, co sygnalizuje
zapalenie siÍ diody D2. Po zakoÒ-
czeniu programowania dioda zgaú-
nie i†procesor moøe byÊ wyjÍty
z†podstawki. Jednoczeúnie moøe
byÊ programowany tylko jeden
procesor. W†programatorze najle-
piej uøyÊ podstawek ze z³¹czami
precyzyjnymi, ktÛre nie ulegn¹
zniszczeniu na skutek czÍstego
wk³adania i†wyjmowania progra-
mowanych procesorÛw.
Ryszard Szymaniak, AVT
Montaø i†uruchomienie
Konstrukcja mechaniczna pro-
gramatora jest bardzo prosta. Na
p³ytce drukowanej (rozmieszczenie
elementÛw na rys. 3 ) oprÛcz in-
nych czÍúci znajduj¹ siÍ takøe
podstawki do osadzania proceso-
Tab. 1.
Kod sterujący Bajt1 Bajt2 Bajt3 Bajt4
Programing enable 1010 1100 0101 0011 xxxx xxxx xxxx xxxx
Chip erase 1010 1100 100x xxxx xxxx xxxx xxxx xxxx
Read Program Memory 0010 H000 xxxx xxaa bbbb bbbb oooo oooo
Write Program Memory 0100 H000 xxxx xxaa bbbb bbbb iiii iiii
Read EEPROM Memory 1010 0000 xxxx xxxx xbbb bbbb oooo oooo
Write EEPROM Memory 1100 0000 xxxx xxxx xbbb bbbb iiii iiii
Write Lock Bits
1010 1100 111x x21x xxxx xxxx xxxx xxxx
Read Device Code
0011 0000 xxxx xxxx xxxx xxbb oooo oooo
gdzie:
a, b binarnie określony adres pamięci z 'a' oznaczającymi starsze bity
H bit określający czy chodzi o młodszy [0] czy starszy [1] bajt kodu programu (dane zapisywane są
do pamięci programu jako bajty, natomiast w ALU przetwarzane jako 16−bitowe słowa),
o dana odczytywana z wyjścia MISO
i dana zapisywana do pamięci
1, 2 bity zabezpieczenia przed odczytem
x ustawienie tak oznaczonego bitu nie jest istotne
64
Elektronika Praktyczna 4/99
WYKAZ ELEMENTÓW
Rezystory
R1, R2: 470
C13: 100
30553675.046.png
Zgłoś jeśli naruszono regulamin