03 2003 83 85


K U R S
Podstawy projektowania systemów
mikroprocesorowych, część 1
Dlaczego '51 i dlaczego Atmel? Odpo-
Rozpoczynamy cykl artykuÅ‚Ûw, w ktÛrych zostanÄ… przedstawione
wiedü jest prosta: ze wzglÍdu na wbudo-
najwałniejsze zagadnienia związane z projektowaniem
wanÄ… pamiÍĘ Flash, niskÄ… cenÍ i Å‚atwÄ…
dostÍpnośĘ sÄ… to mikrokontrolery bardzo
systemÛw mikroprocesorowych. Na modelowy mikrokontroler
popularne, a ze wzglÍdu na duÅ‚Ä… popu-
larnośĘ Å‚atwo jest znaleüĘ tanie, czÍsto
wybraliÅ›my atmelowskie wersje 8051, ktÛre cieszÄ… siÍ bardzo
bezpÅ‚atne, programy narzÍdziowe. UmoÅ‚-
liwia to amatorom-elektronikom realizacjÍ duÅ‚ym powodzeniem wÅ›rÛd projektantÛw w naszym kraju.
kompleksowych projektÛw bez ponoszenia
jakichkolwiek kosztÛw. Co wiÍcej, gwa-
rantowana przez producenta minimalna rokontrolera z ukÅ‚adami analogowymi, takÅ‚e spadek napiÍcia wyjÅ›ciowego,
liczba cykli zapisu przekracza 1000, co ilustrujÄ…c wszystko schematami i w razie zmniejszy siÍ tÅ‚umienie tÍtnieÒ zasilania
w zupeÅ‚noÅ›ci wystarcza do przygotowania, potrzeby przykÅ‚adowymi procedurami i stabilizator - ogÛlnie mÛwiÄ…c - przesta-
przetestowania i wprowadzenia poprawek w asemblerze. nie peÅ‚niĘ swojÄ… funkcjÍ (choĘ mikro-
do dowolnie skomplikowanego programu W realiach obecnej elektroniki, kontroler i ukÅ‚ady wspÛÅ‚pracujÄ…ce ciÄ…gle
- nie ma wiÍc koniecznoÅ›ci kupowania zwÅ‚aszcza cyfrowej, bez mikroprocesorÛw mogÄ… dziaÅ‚aĘ - nie bÍdzie to jednak
emulatora sprzÍtowego. ani rusz, dlatego najwyÅ‚sza pora, aby praca pewna). Kondensatory C1 i C2 po-
Zapewne niektÛrzy Czytelnicy stwier- zapoznaĘ siÍ z niezbyt trudnÄ… sztukÄ… winny byĘ umieszczone jak najbliÅ‚ej wy-
dzÄ…, Å‚e sÄ… lepsze, szybsze, nowoczeÅ›niej- praktycznego projektowania urzÄ…dzeÒ wy- prowadzeÒ stabilizatora - zapobiegajÄ…
sze konstrukcje (np. rodzina AVR Atme- korzystujÄ…cych mikrokontrolery, ktÛra ot- one jego wzbudzeniu. W pobliÅ‚u wypro-
la, PIC-e, czy inne) i bÍdÄ… mieli trochÍ wiera drogÍ nowym zastosowaniom nie- wadzeÒ zasilania mikrokontrolera, jak
racji, jednak w wiÍkszoÅ›ci typowych za- dostÍpnym lub trudnym w realizacji przy i kaÅ‚dego innego ukÅ‚adu cyfrowego, mu-
stosowaÒ nie jest potrzebna ani zawrot- uÅ‚yciu ìzwykÅ‚ychî ukÅ‚adÛw cyfrowych szÄ… byĘ umieszczone kondensatory blo-
na moc obliczeniowa, ani rozbudowane TTL czy CMOS i pozwala na realizacjÍ kujÄ…ce zasilanie (C4, C5) zapobiegajÄ…ce
peryferie wbudowane w mikrokontroler - elastycznych rozwiÄ…zaÒ dziÍki poÅ‚Ä…czeniu zakÅ‚ÛcajÄ…cemu dziaÅ‚aniu ukÅ‚adÛw na szy-
potrzebny jest tani ukÅ‚ad, Å‚atwy do ku- i wspÛÅ‚pracy ukÅ‚adÛw sprzÍtowych i pro- nÍ zasilania i zabezpieczajÄ…ce inne ele-
pienia w sklepie elektronicznym w ma- gramu. Zatem zaczynamy... menty przed zakÅ‚Ûceniami przenoszony-
łym mieście, dobrze opisany i prosty mi tą szyną. PojemnośĘ kondensatora C3
w programowaniu. Bez prądu ani rusz, czyli nie powinna byĘ zbyt duła (dla syste-
Na rynku wydawniczym, w czasopis- zasilanie mikrokontrolera mÛw pobierajÄ…cych kilkanaÅ›cie...kilka-
mach i w publikacjach elektronicznych Wałną, lecz niejednokrotnie lekcewa- dziesiąt mA kondensator C3 jest zby-
jest dostÍpnych wiele informacji na te- Å‚onÄ… sprawÄ… jest zasilanie mikrokontrole- teczny), duÅ‚o waÅ‚niejsza jest wartośĘ
mat mikrokontrolerÛw rodziny '51, ich ra. CzÍsto wÅ‚aÅ›nie niefortunne rozwiÄ…za- pojemnoÅ›ci C przed stabilizatorem, dajÄ…-
parametrÛw, budowy wewnÍtrznej, dzia- nie obwodÛw zasilania jest przyczynÄ… nie- ca odpowiedni zapas energii redukujÄ…cy
Å‚ania ukÅ‚adÛw peryferyjnych i zasad pro- stabilnej pracy, objawiajÄ…cej siÍ niekontro- tÍtnienia sieci.
gramowania. Brakuje pozycji w przystÍp- lowanym zerowaniem ukÅ‚adu lub genera- Ze stabilizatora 7805 moÅ‚na uzyskaĘ
ny sposÛb przekazujÄ…cej praktyczne in- cjÄ… zakÅ‚ÛceÒ na szynach zasilania i wpÅ‚y- prÄ…d o maksymalnym natÍÅ‚eniu 1 A, co
formacje dotyczÄ…ce projektowania ukÅ‚a- wajÄ…cych na pracÍ innych podzespoÅ‚Ûw jest wartoÅ›ciÄ… caÅ‚kowicie wystarczajÄ…cÄ…
dÛw elektronicznych wykorzystujÄ…cych wspÛÅ‚pracujÄ…cych z mikrokontrolerem. dla wiÍkszoÅ›ci aplikacji. WaÅ‚nÄ… sprawÄ…
mikrokontrolery. ChoĘ w tym artykule Mikrokontrolery AT89C5x mogÄ… byĘ jest moc tracona w stabilizatorze, ktÛra
i cyklu nastÍpnych skoncentrujemy siÍ zasilane napiÍciem 5 V Ä…20%, natomiast przy napiÍciu zasilajÄ…cym rzÍdu 12
na najprostszych mikrokontrolerach ro- układy AT89Cx051 umołliwiają zasilanie V i wyłszym (max. 24 V), zmusza nas
dziny '51 firmy Atmel (AT89Cx051, ze ürÛdÅ‚a o napiÍciu od 2,7 do 6 V. do stosowania radiatora, czasem o dośĘ
AT89C51, AT89C52), to podane tutaj in- Najbardziej popularnym rozwiÄ…zaniem pokaünych rozmiarach.
formacje przydadzÄ… siÍ rÛwnieÅ‚ (poza jest zasilanie mikrokontrolera napiÍciem PobÛr prÄ…du przez mikrokontroler
wykorzystaniem specyficznych cech wy- 5 V i zastosowanie stabilizatora scalonego jest zaleÅ‚ny od napiÍcia zasilania oraz
mienionych procesorÛw) przy realizacji w ukÅ‚adzie jak na rys. 1. NaleÅ‚y pamiÍ- od czÍstotliwoÅ›ci taktowania. Producent
projektÛw, w ktÛrych zastosujemy proce- taĘ, Å‚e ukÅ‚ady stabilizatorÛw serii 78xx podaje pobÛr prÄ…du dla czÍstotliwoÅ›ci
sor z rodziny AVR, PIC, ukÅ‚ady Motoro- potrzebujÄ… do prawidÅ‚owej pracy napiÍ- oscylatora 12 MHz, ktÛry dla ukÅ‚adÛw
li czy innych producentÛw. PokaÅ‚emy cia wejÅ›ciowego o okoÅ‚o 3 V wyÅ‚szego 89C5x wynosi 25 mA, a dla ukÅ‚adÛw
najprostszÄ… drogÍ prowadzÄ…cÄ… do reali- niÅ‚ napiÍcie wyjÅ›ciowe, co dla ukÅ‚adu 89Cx051 wynosi 5,5 mA przy zasilaniu
zacji konkretnego celu, przedstawimy 7805 daje minimalnÄ… wartośĘ napiÍcia 3 V i 15 mA przy 6 V. Z tego powodu
najczÍÅ›ciej popeÅ‚niane bÅ‚Ídy i sposoby wejÅ›ciowego okoÅ‚o 8 V. JeÅ‚eli napiÍcie ìmaÅ‚eî Atmele sÄ… bardzo atrakcyjnÄ… pro-
ich unikania, omÛwimy wspÛÅ‚pracÍ mik- na wejÅ›ciu bÍdzie niÅ‚sze, spowoduje to pozycjÄ… dla aplikacji z zasilaniem bate-
Rys. 1
Elektronika Praktyczna 3/2003
83
K U R S
niu siÍ napiÍcia gÅ‚Ûwnego nastÄ…pi doÅ‚a-
List. 1.
dowanie kondensatora C3 od napiÍcia
ORG 0000H
zapewnianego przez obwÛd rezerwowy
LJMP POCZATEK
do wartości 4,4...4,7 V (w zalełności od
;(procedury obsługi przerwań)
typu D1). Przy niskim napiÍciu akumu-
latorka rezerwowego istnieje mołliwośĘ,
POCZATEK:
Å‚e przepÅ‚yw prÄ…du przez obwÛd C3 i R2
CLR P1.3 ;włączenie podtrzymania zasilania
(oraz wewnÍtrzny rezystor mikroproceso-
MOV A,P1 ;odczyt stanu klawiszy
ra) wywoÅ‚a spadek napiÍcia na R2, ktÛ-
ANL A,#0F0h ;wyzerowanie niepotrzebnych bitów
ry mołe wyzerowaĘ mikrokontroler.
SWAP A ;zamiana części bajtu
ObecnośĘ C1 oraz rezystancja dynamicz-
MOV R7,A ; otrzymujemy w rejestrze R7 stan klawiszy:
;bit 0 - stan klawisza P1 (0-wciśnięty)
na diody D1 ograniczajÄ… prÍdkośĘ naras-
;bit 1 - stan klawisza P2 (0-wciśnięty)
tania napiÍcia, a co za tym idzie war-
;bit 2 - stan klawisza P3 (0-wciśnięty)
tośĘ prądu doładowującego C2, zatem
;bit 3 - stan klawisza P4 (0-wciśnięty)
napiÍcie na R2 nie osiÄ…gnie wartoÅ›ci
;(inicjalizacja liczników, zerowanie zmiennych, itp.)
grołącej wyzerowaniem mikrokontrolera.
Opisany układ nie jest zalecany do pra-
;(właściwa część programu)
cy z mikrokontrolerami AT89C5x, ponie-
waÅ‚ w przypadku tych ukÅ‚adÛw naleÅ‚a-
SETB P1.3 ;wyłączenie podtrzymania po wykonaniu programu
Å‚oby zastosowaĘ akumulatorek o napiÍciu
SJMP $ ;pozostań w pętli (ewentualne oczekiwanie na puszczenie
4,8 V - pojemnośĘ akumulatorka 3,6
;długo trzymanego klawisza, mimo wyłączenia tranzystorów
V nigdy nie bÍdzie caÅ‚kowicie wykorzys-
;dopiero po jego puszczeniu wyłączy się zasilanie)
tana, gdyÅ‚ ìduÅ‚eî Atmele nie dziaÅ‚ajÄ…
przy tak niskich napiÍciach jak ìmaÅ‚eî.
ryjnym lub wymagajÄ…cych bateryjnego o wartoÅ›ci 47 k&! maksymalny prÄ…d Å‚a- W praktyce czÍsto wykorzystywane sÄ…
zasilania awaryjnego. Na rys. 2 przed- dowania przy rozÅ‚adowanym akumulator- urzÄ…dzenia, ktÛre zasilane powinny byĘ
stawiono jeden z wielu mołliwych wa- ku osiąga 0,05 mA, co daje nam ponad tylko w chwili zaistnienia odpowiednie-
riantÛw rezerwowego zasilania mikrokon- miesiÄ…c czasu potrzebny do peÅ‚nego na- go zdarzenia zewnÍtrznego - najczÍÅ›ciej
trolera. Jako ürÛdÅ‚o rezerwowe zastoso- Å‚adowania. Taka wartośĘ prÄ…du nie za- wciÅ›niÍcia przycisku (np. nadajniki zdal-
wano akumulatorek 3,6 V. Dobrze w tej grała nawet w pełni naładowanemu aku- nego sterowania, itp.), gdy przez pozo-
roli sprawdzajÄ… siÍ akumulatorki NiCd mulatorkowi. JeÅ‚eli przewiduje siÍ czÍs- staÅ‚y czas ukÅ‚ad pozostaje bezczynny, co
3,6 V/60 mAh, stosowane dawniej tsze przerwy w zasilaniu (ze wzglÍdu przy zasilaniu bateryjnym jest czystym
w pÅ‚ytach gÅ‚Ûwnych komputerÛw PC. np. na przenoszenie urzÄ…dzenia), warto marnotrawstwem. Na rys. 3 pokazano
MoÅ‚na rÛwnieÅ‚ zastosowaĘ akumulatorki zastosowaĘ wiÍksze prÄ…dy Å‚adowania, fragment schematu przykÅ‚adowego urzÄ…-
wykorzystywane w sÅ‚uchawkach telefo- niezbÍdne do uzupeÅ‚niania zuÅ‚ytej ener- dzenia, ktÛrego zasilanie jest wÅ‚Ä…czane
nÛw bezprzewodowych, posiadajÄ… one gii. WÛwczas dioda D1 powinna byĘ tylko na czas obsÅ‚ugi wciÅ›niÍcia przy-
wiÍkszÄ… pojemnośĘ, lecz sÄ… droÅ‚sze. Dio- diodÄ… krzemowÄ…, co przy zasilaniu cisku. WciÅ›niÍcie ktÛregokolwiek z przy-
da D2 powinna byĘ diodÄ… Schottky'ego, 5 V ograniczy maksymalne napiÍcie na ciskÛw powoduje doÅ‚Ä…czenie ujemnego
ze wzglÍdu na niÅ‚szy niÅ‚ w standardo- akumulatorku do bezpiecznej wartoÅ›ci bieguna zasilania do masy urzÄ…dzenia.
wych diodach spadek napiÍcia na zÅ‚Ä…- okoÅ‚o 4,4 V bez koniecznoÅ›ci ogranicza- Po rozpoczÍciu pracy przez mikrokont-
czu, D1 mołe byĘ zwykłą diodą krze- nia prądu ładowania, gdy akumulatorek roler, pierwszą instrukcją jest wyzerowa-
mową - stanowi ona zabezpieczenie zostanie w pełni naładowany. nie linii portu P1.3, co powoduje włą-
przed zasilaniem caÅ‚ego urzÄ…dzenia ze Zastosowany kondensator C2 blokuje czenie tranzystora T2 i podanie napiÍcia
ürÛdÅ‚a rezerwowego. Rezystor R1 dobie- zasilanie, natomiast C1 jest odpowie- na bazÍ T1. NastÍpuje wÅ‚Ä…czenie T1
ramy w celu uzyskania poÅ‚Ä…danego prÄ…- dzialny za stabilnÄ… pracÍ w momentach i podtrzymanie zasilania mimo zwolnie-
du Å‚adowania akumulatorka - naleÅ‚y wyÅ‚Ä…czania, a zwÅ‚aszcza wÅ‚Ä…czania zasi- nia naciÅ›niÍtego przycisku. Po wykona-
przy tym pamiÍtaĘ, Å‚e akumulatorek bÍ- lania gÅ‚Ûwnego. Kondensator C1 powi- niu programu odpowiedzialnego za ob-
dzie doÅ‚adowywany przez caÅ‚y czas pra- nien mieĘ pojemnośĘ kilka razy wiÍkszÄ… sÅ‚ugÍ naciÅ›niÍcia konkretnego przycisku
cy zasilania gÅ‚Ûwnego, wiÍc naleÅ‚y ogra- niÅ‚ kondensator obwodu zerowania mik- mikroprocesor ustawia liniÍ P1.3, powo-
niczyĘ prąd ładowania do wartości dla rokontrolera (C3, R2). Spowodowane jest dując zatkanie T2 i T1, i odłączenie za-
niego bezpiecznej. Dla rezystora R1 to tym, Å‚e przy braku C1 po pojawie- silania. ObwÛd zasilania mikrokontrolera
Rys. 2 Rys. 3
Elektronika Praktyczna 3/2003
84
K U R S
i pozostaÅ‚ych ukÅ‚adÛw nie powinien po- energii osiÄ…gniemy takÅ‚e, obniÅ‚ajÄ…c na- ta - wystarcza doÅ‚Ä…czenie ktÛregokolwiek
siadaĘ filtrujÄ…cych kondensatorÛw elek- piÍcie zasilania. Jest to jednak moÅ‚liwe wyprowadzenia dowolnego portu mikro-
trolitycznych o pojemnoÅ›ciach powyÅ‚ej tylko w ukÅ‚adach AT89Cx051, ze wzglÍ- kontrolera do linii zasilania gÅ‚Ûwnego
10 µF, gdyÅ‚ wydÅ‚uÅ‚Ä… one czas wÅ‚Ä…cza- du na szeroki zakres napiÍĘ zasilajÄ…cych przez rezystor rzÍdu 1 do 10 k&! (na
nia i mogą spowodowaĘ trudności z wy- - układy AT89C5x przestają poprawnie rys. 2 - rezystor R3). W chwili zaniku
Å‚Ä…czeniem (ukÅ‚ad moÅ‚e siÍ ìzatrzasnąĘî pracowaĘ juÅ‚ przy napiÍciu zasilania napiÍcia gÅ‚Ûwnego na linii zasilania po-
ze wzglÍdu na niestabilnÄ… pracÍ mikro- rzÍdu 3,5 V. NiektÛre egzemplarze ukÅ‚a- jawi siÍ potencjaÅ‚ bliski masy (ze wzglÍ-
kontrolera przy powolnym opadaniu na- dÛw AT89Cx051 pracujÄ… poprawnie juÅ‚ du na doÅ‚Ä…czone inne odbiorniki), co
piÍcia zasilania). PewnośĘ dziaÅ‚ania od napiÍcia rzÍdu 1,8...1,9 V, co z po- spowoduje wprowadzenie linii portu
ukÅ‚adu zwiÍkszy dodanie dodatkowego wodzeniem pozwala na zasilanie ich w stan niski - wykrycie stanu niskiego
obciÄ…Å‚enia w postaci rezystora (np. 330 z dwÛch akumulatorkÛw Ni-Cd (2,4 V) oznacza brak zasilania i koniecznośĘ
&!) podÅ‚Ä…czonego miÍdzy szynami Vcc lub dwÛch zwykÅ‚ych ogniw cynkowych podjÍcia okreÅ›lonych dziaÅ‚aÒ, np. wej-
i GND mikrokontrolera - spowoduje to czy alkalicznych (3 V). ście w stan Power Down. Wyjście z tego
jednak wzrost poboru prÄ…du podczas Jeszcze wiÍksze obniÅ‚enie napiÍcia stanu jest moÅ‚liwe wyÅ‚Ä…cznie po naciÅ›-
dziaÅ‚ania urzÄ…dzenia. WadÄ… przedstawio- zasilania moÅ‚liwe jest po wprowadzeniu niÍciu przycisku P1 (rys. 2.). MoÅ‚liwe
nego rozwiÄ…zania jest koniecznośĘ przy- mikrokontrolera w tryb Power Down jest rÛwnieÅ‚ wejÅ›cie w tryb pracy Idle
trzymania przycisku tak dÅ‚ugo, jak trwa (przez ustawienie bitu PD rejestru (uÅ›pienie), ktÛry rÛwnieÅ‚ zatrzymuje pra-
czas zerowania mikroprocesora, plus czas PCON), co pozwala na obniÅ‚enie napiÍ- cÍ mikrokontrolera, dziaÅ‚ajÄ… jednak prze-
potrzebny na wykonanie rozkazÛw od- cia zasilania zarÛwno ìduÅ‚ychî, jak rwania i generator sygnaÅ‚u zegarowego.
powiedzialnych za wÅ‚Ä…czenie podtrzyma- i ìmaÅ‚ychî Atmeli do wartoÅ›ci 2 V (gwa- WyjÅ›cie z trybu Idle nastÍpuje w momen-
nia i odczyt wyprowadzeÒ poszczegÛl- rantowane przez producenta), a praktycz- cie nadejÅ›cia zgÅ‚oszenia dowolnego prze-
nych klawiszy (okreÅ›lenie, ktÛry klawisz nie nawet do 1,2...1,3 V. Niestety pro- rwania (lub sygnaÅ‚u RESET) - umoÅ‚li-
zostaÅ‚ naciÅ›niÍty) - dlatego te czÍÅ›ci cesor w takim stanie nie pracuje, pod- wia to realizacjÍ wielu zadaÒ, np. reali-
programu powinny byĘ jednymi z pierw- trzymywana jest jedynie zawartośĘ we- zacjÍ zegara czasu rzeczywistego pobie-
szych rozkazÛw. MoÅ‚na to zrealizowaĘ wnÍtrznej pamiÍci danych i rejestrÛw rajÄ…cego z zasilania rezerwowego prÄ…d
w sposÛb pokazany na list. 1. NiewÄ…tp- SFR. PowrÛt do normalnej pracy moÅ‚li- duÅ‚o mniejszy niÅ‚ przy normalnej pra-
liwÄ… zaletÄ… tej metody jest praktycznie wy jest tylko przez generacjÍ sygnaÅ‚u cy. MoÅ‚liwy jest teÅ‚ powrÛt do normal-
zerowy pobÛr prÄ…du, gdy ukÅ‚ad jest nie- RESET (po uprzednim przywrÛceniu peÅ‚- nej pracy przy doÅ‚Ä…czeniu do linii prze-
aktywny. nego napiÍcia zasilania). WejÅ›cie w stan rwaÒ zewnÍtrznych obwodu wykrywajÄ…-
Zmniejszanie poboru mocy moÅ‚na Power Down powinno nastÄ…piĘ zatem cego powrÛt gÅ‚Ûwnego napiÍcia zasilania
dokonaĘ na drodze zmniejszania czÍstot- przed zanikiem napiÍcia zasilania. Reali- (generujÄ…cego na wyjÅ›ciu stan 0 po po-
liwoÅ›ci taktowania, ktÛra niemal linio- zacja ukÅ‚adu wykrywania zaniku gÅ‚Ûw- jawieniu siÍ napiÍcia).
wo wpÅ‚ywa na pobÛr prÄ…du, duÅ‚y zysk nego napiÍcia zasilania jest bardzo pros- PaweÅ‚ Hadam
Elektronika Praktyczna 3/2003
85


Wyszukiwarka

Podobne podstrony:
11 03 2003
IM IS Solar Divicon (03,2003)
Nie wolno czekać aż będzie za późno (rozmowa z Richardem Perle 08 03 2003)
2003 03 Szkoła konstruktorów klasa II
Magazine Asimov s Science Fiction 2003 Issue 03 March (v1 0) [txt]
Pierwszy kontrakt naftowy w Iraku od 2003 r (03 11 2009)
iraq 2003 03
2003 03 Szkoła konstruktorów
863 03
Nov 2003 History Africa HL paper 3

więcej podobnych podstron