Sunteți pe pagina 1din 25

SISTEM DE ALARMA FOLOSIND

MICROCONTROLERUL
PIC16F84
-PROIECT-
Petresc Andrei Eugen
Anu I SAUIEE
1
I! INTRODUCERE IN
MICROCONTROLERE
1! CE ESTE UN MICROCONTROLER"
L# $%du gener# un c%ntr%er &'c%ntr%er' - un ter$en de %rigine #ng%-
s#(%n)* cu un d%$eniu de cu+rindere ,%#rte #rg- este* #ctu#$ente* % structur)
eectr%nic) destin#t) c%ntr%uui &destu de e.ident/- unui +r%ces s#u* $#i
gener#* unei inter#c0iuni c#r#cteristice
cu $ediu e(teri%r* ,)r) s) ,ie neces#r) inter.en0i# %+er#t%ruui u$#n! Pri$ee
c%ntr%ere #u ,%st re#i1#te 2n te3n%%gii +ur #n#%gice* ,%%sind c%$+%nente
eectr%nice discrete 4i5s#u c%$+%nente eectr%$ec#nice &de e(e$+u reee-!
Cee c#re ,#c #+e # te3nic# nu$eric) $%dern) #u ,%st re#i1#te ini0i# +e 6#1#
%gicii c#6#te &cu circuite integr#te nu$erice st#nd#rd SSI 4i MSI - 4i # unei
eectr%nici #n#%gice une%ri c%$+e(e* $%ti. +entru c#re 'str)uce#u' +rin
di$ensiuni $#ri* c%nsu$ energetic +e $)sur) 4i* nu de +u0ine %ri* %
,i#6iit#te c#re )s# de d%rit!
A+#ri0i# 4i utii1#re# $icr%+r%ces%#re%r de u1 gener# # dus # % reducere
c%nsistent) # c%sturi%r* di$ensiuni%r* c%nsu$uui 4i % 2$6un)t)0ire # ,i#6iit)0ii!
E(ist) 4i # %r# #ctu#) % serie de #st,e de c%ntr%ere de c#it#te* re#i1#te 2n 7uru
un%r $icr%+r%ces%#re de u1
gener# cu$ #r ,i 889 &8i%g-* 898658988 &Inte-* 689: &M%t%r%#-* etc!
2
Pe $)sur) ce +r%cesu de $ini#turi1#re # c%ntinu#t* # ,%st +%si6i c# $#7%rit#te#
c%$+%nente%r neces#re re#i1)rii unei #st,e de structuri s) ,ie 2nc%r+%r#te
&integr#te- # ni.eu unui singur $icr%circuit &ci+-! Ast,e c) un $icr%c%ntr%er #r
+ute# ,i descris c# ,iind 4i % s%u0ie # +r%6e$ei c%ntr%uui cu #7ut%ru # &#+r%#+e-
unui singur circuit!
Leg#t de denu$iri 4i #cr%ni$e utii1#te* #4# cu$ un $icr%+r%ces%r de u1 gener#
este dese$n#t +rin MPU &Micr%Pr%cess%r Unit-* un $icr%c%ntr%er este* de
regu)* dese$n#t c# MCU, de4i se$ni,ic#0i# ini0i#) # #cestui #cr%ni$ este
Micr%C%$+uter Unit!
O definiie, cu un sens foarte larg de cuprindere, ar fi aceea c un
microcontroller este un microcircuit care incorporeaz o unitate central
(CPU) i o memorie mpreun cu resurse care-i permit interaciunea cu
mediul eterior!
Resursee integr#te # ni.eu $icr%circuituui ar tre"ui s includ, ce
+u0in* ur$)t%#ree c%$+%nente;
#! % unit#te centr#) &CPU-* cu un %sci#t%r intern +entru ce#su de siste$
6! % $e$%rie %c#) ti+ ROM5PROM5EPROM5FLAS< 4i e.entu# un# de
ti+ RAM
c! un siste$ de 2ntreru+eri
d! I5O - intr)ri5ie4iri nu$erice &de ti+ +%rt +#r#e-
e! un +%rt seri# de ti+ #sincr%n 4i5s#u sincr%n* +r%gr#$#6i
,! un siste$ de ti$ere-te$+%ri1#t%#re5nu$)r)t%#re +r%gr#$#6ie
Este +%si6i c# # #ceste# s) ,ie #d)ug#te* # un +re0 de c%st #.#nt#7%s*
c#r#cteristici s+eci,ice s#rcinii de c%ntr% c#re tre6uie 2nde+inite;
g! un siste$ de c%n.ersie #n#%g nu$eric)&un# s#u $#i $ute intr#ri
#n#%gice-
3! un siste$ de c%n.ersie nu$eric #n#%gic 4i5s#u ie4iri P=M &cu
$%du#re 2n dur#t)-
3
i! un c%$+#r#t%r #n#%gic
7! % $e$%rie de d#te ne.%#ti) de ti+ EEPROM
>!,#ciit)0i su+i$ent#re +entru siste$u de te$+%ri1#re5nu$)r#re &c#+t#re
4i c%$+#r#re-
! un ce#s de g#rd) &ti$er de ti+ ?#tc3d%g-
$! ,#ciit)0i +entru %+ti$i1#re# c%nsu$uui +r%+riu
Un $icr%c%ntr%er ti+ic $#i #re* # ni.eu unit)0ii centr#e* ,#ciit)0i de +reucr#re #
in,%r$#0iei # ni.e de 6it* de #cces direct 4i u4%r # intr)ri5ie4iri 4i un $ec#nis$
de +reucr#re # 2ntreru+eri%r r#+id 4i e,icient!
Utilizarea unui microcontroler constituie o soluie prin care se poate
reduce dramatic numrul componentelor electronice precum i costul
proiectrii i al dez#oltrii unui produs!
O$%&'()*+&, Utii1#re# unui $icr%c%ntr%er* %ric@t de e.%u#t* nu
ei$in) unee c%$+%nente #e inter,e0ei cu $ediu e(teri%r &#tunci c@nd ee sunt
c3i#r neces#re-; su6siste$e de +reucr#re #n#%gic) &#$+i,ic#re* redres#re*
,itr#re* +r%tec0ie-i$it#re-* ee$ente +entru
re#i1#re# i1%)rii g#.#nice &%+t%cu+%#re* tr#ns,%r$#t%#re-* ee$ente de
c%$ut#0ie de +utere &tr#n1ist%#re de +utere* reee eectr%$ec#nice s#u st#tice-!
A! UNDE SUNT UTILI8ATE MICROCONTROLERELE"
T%#te #+ic#0iie 2n c#re se utii1e#1) $icr%c%ntr%ere ,#c +#rte din
c#teg%ri# #4# 1ise%r siste$e 2nc#+su#te-integr#te &Be$6edded sCste$sD-* #
c#re e(isten0# unui siste$ de c#cu inc%r+%r#t este &#+r%#+e- tr#ns+#rent)
+entru utii1#t%r!Pentru c# utii1#re# %r este de ,%#rte %ri sin%ni$) cu idee# de
c%ntr% $icr%c%ntr%eree sunt utii1#te $#si. 2n r%6%tic) 4i $ec#tr%nic)!
Conceptul de mecatronic este pan la urm indisolu"il legat de utilizarea
microcontrolerelor!Aut%$#ti1#re# +r%cesuui de ,#6ric#0ie-+r%duc0ie este un #t
4
$#re 6ene,ici#r; CNC &C%$+uterised Nu$eric# C%ntr%s- c%$en1i nu$erice
+entru $#4inie unete* #ut%$#te+r%gr#$#6ie &PLC-* inii ,e(i6ie de ,#6ric#0ie*
etc! Indi,erent de n#tur# +r%cesuui
#ut%$#ti1#t s#rcinie s+eci,ice +%t ,i e.entu# distri6uite # un $#re nu$)r de
$icr%c%ntr%ere integr#te 2ntr-un siste$ unic +rin inter$ediu unei# s#u $#i
$ut%r $#gistr#e!
Printre $utee d%$enii unde utii1#re# %r este +r#ctic un st#nd#rd
industri# se +%t $en0i%n#; 2n industri# de #ut%$%6ie &c%ntr%u
#+rinderii5$%t%ruui* ci$#ti1#re* di#gn%1)* siste$e de ##r$)* etc!-* 2n #4# 1is#
eectr%nic) de c%nsu$ &siste$e #udi%* tee.i1%#re* c#$ere .ide% 4i
.ide%c#set%,%#ne* tee,%nie $%6i)* EPS-uri* 7%curi eectr%nice* etc!-* 2n
#+#r#tur# eectr%c#snic) &$#4ini de s+)#t* ,rigidere* cu+t%#re cu $icr%unde*
#s+ir#t%#re-* 2n c%ntr%u
$ediuui 4i ci$#ti1#re &sere* %cuin0e* 3#e industri#e-* 2n industri# #er%s+#0i#)*
2n $i7%#cee $%derne de $)sur#re - instru$ent#0ie &#+#r#te de $)sur)* sen1%ri
4i tr#duct%#re inteigente-* # re#i1#re# de +eri,erice +entru c#cu#t%#re* 2n
$edicin)!
C# un e(e$+u din industri# de #ut%$%6ie &#ut%$%ti.e industrC-* unde
nu$#i # ni.eu #nuui 1:::* un FM= seri# G utii1# 6H de $icr%c%ntr%ere* i#r un
Mercedes din c#s# S utii1# 6I de $icr%c%ntr%ere!
Pr#ctic* este ,%#rte greu de g)sit un d%$eniu de #+ic#0ie 2n c#re s) nu se
utii1e1e $icr%c%ntr%eree!
I! CLASIFICJRI KI LARIANTE CONSTRUCTILE
E(ist) # %r# #ctu#) un nu$)r e(tre$ de $#re de ti+uri c%nstructi.e de
$icr%c%ntr%ere! Un criteriu de c#si,ic#re c#re se +%#te #+ic# 2nt%tde#un# este
ungi$e# &di$ensiune#- cu.@ntuui de d#te! Func0ie de +utere# de c#cu d%rit) 4i
de #te c#r#cteristici se +%t #ege .#ri#nte #.@nd di$ensiune# cu.@ntuui de d#te
5
de 4* 8*16 s#u IA de 6i0i &e(ist) c3i#r 4i .#ri#nte de 64 de 6i0i/-! Nu este
%6ig#t%riu c# di$ensiune# cu.@ntuui de d#te s) ,ie eg#) cu di$ensiune# unui
cu.@nt $#4in) &cu.@nt +r%gr#$-! E(ist) 4i $ute .#ri#nte 1ise dedic#te*
ne+r%gr#$#6ie de utii1#t%r # ni.e de c%d $#4in)* strict s+eci#i1#te +e %
#nu$it) #+ic#0ie* +rin inter$ediu c%duui +re+r%gr#$#t 4i # resurse%r
3#rd?#re* utii1#te +entru c%$unic#0ii* c%ntr%u t#st#turi%r* c%ntr%u #+#r#turii
#udi%5.ide%* +reucr#re# nu$eric) # se$n#uui* etc!
4! TE<NOLOEIILE DE FAFRICAMIE UTILI8ATE
Practic, toate microcontrolerele se realizeaz la ora actual n
te-nologie CMO% &te3n%%gii si$i#re ce%r utii1#te # seriie st#nd#rd CMOS de
circuite nu$erice; <C* AC* ALL* etc!-! Se +%t re#i1# #st,e structuri cu % $#re
densit#te de integr#re* cu un c%nsu$ redus &c#re .# de+inde de ,rec.en0# de
ucru-* +er$i0@nd e.entu# #i$ent#re# de # 6#terie! L%gic# intern) este st#tic)
&t%t# s#u 2n ce# $#i $#re +#rte- +er$i0@nd #st,e* 2n #nu$ite c%ndi0ii* $ic4%r#re#
,rec.en0ei de ce#s s#u c3i#r %+rire# ce#suui 2n idee# %+ti$i1)rii c%nsu$uui!
Te3n%%gi# este c#r#cteri1#t) 4i de % i$unit#te $#i $#re # +ertur6#0ii* esen0i#)
2ntr-un $#re nu$)r de #+ic#0ii s+eci,ice! Se re#i1e#1) .#ri#nte +entru d%$eniu
e(tins #
te$+er#turii de ,unc0i%n#re &de e(!- 49 N8H C-! E(ist) ,%#rte $ute .#ri#nte de
2nc#+su#re &c#+sue de +#stic 4i $#i r#r de cer#$ic)-*
$ute din ee destin#te $%nt)rii +e su+r#,#0) &SMD-; SOIC* PLCC* POFP* TOFP
&(199+ini-* etc!* d#r 4i .#ri#nte c#sice cu +ini ti+ DIP5DIL &ti+ic de # 8 # 68 +ini-!
6
H! ASPECTE LEEATE DE IMPLEMENTAREA MEMORIEI
MICROCONTROLERELOR
Pn #,#r) de $e$%ri# %c#) de ti+ RAM* de di$ensiuni re#ti. reduse &de #
(19 %cte0i # (1>-* i$+e$ent#t) c# #t#re s#u e(istent) su6 ,%r$# unui set de
registre 4i destin#t) $e$%r)rii d#te%r &.#ri#6ie%r-* $#i e(ist) % serie de
#s+ecte s+eci,ice* $#re# $#7%rit#te # #cest%r# ,iind eg#t) de implementarea
fizic a memoriei de program &4i e.entu# # unei +)r0i # $e$%riei de d#te- cu
#7ut%ru un%r $e$%rii ne.%#tie! C#sic* $e$%ri# de +r%gr#$
er# i$+e$ent#t) 2ntr-% .#ri#nt) de ti+ ROM; &P'OM +entru de1.%t#re 4i
+r%duc0ie +e sc#r) $ic)5$edie s#u mas.-'OM +entru +r%duc0i# de $#s)!
Princi+#ee c%nce+te n%i #+)rute de # ungu ti$+uui 2n eg)tur) cu
i$+e$ent#re# $e$%riei de +r%gr#$ s#u d#te sunt enu$er#te 2n c%ntinu#re!
a! O/P - $#7%rit#te# +r%duc)t%ri%r %,er) .#ri#nte de $icr%c%ntr%ere #
c#re $e$%ri# %c#) de +r%gr#$ este de ti+ OTP &One Ti$e Pr%gr#$$#6e-*
+r#ctic % $e$%rie PROM identic) intern cu .#ri#nt# EPROM* d#r ,)r) ,ere#str#
de cu#r0 +entru 4tergere &deci 4i $#i ie,tine-Q #ceste .#ri#nte +%t ,i utii1#te c# %
#tern#ti.) +entru % +r%duc0ie i$it#t)* +@n) 2n $%$entu test)rii 4i .#id)rii ,in#e
# c%duui* $%$ent 2n c#re +%t ,i c%$#nd#te .#ri#ntee &$#s>- ROM +r%+riu-1ise*
cee $#i ec%n%$ice +entru % +r%duc0ie de $#s)
"! 01)%2 &P'OM - este % s%u0ie $#i 6un) dec@t EPROM-u +r%+riu-1is
#tunci c@nd este neces#r un .%u$ $#re de $e$%rie +r%gr#$ &ne.%#ti)-Q $#i
r#+id) 4i cu un nu$)r g#r#nt#t su,icient de $#re &(19999- de cicuri de
+r%gr#$#re &de 4tergere5scriere-* este
c#r#cteri1#t) 4i +rin $%d#it)0i $#i ,e(i6ie de +r%gr#$#reQ este utii1#t) nu$#i
c# $e$%rie de +r%gr#$!
c! &&P'OM - $ute $icr%c%ntr%ere #u 4i % $e$%rie de #cest ti+* de
di$ensiune i$it#t) &de # (19 %cte0i # ( R %cte0i-* destin#t) $e$%r)rii unui
nu$)r i$it#t de +#r#$etrii &memorie de date- c#re e.entu# tre6uie $%di,ic#0i
din ti$+ 2n ti$+Q este % $e$%rie re#ti.
7
ent) &# scriere-* d#r cu un nu$)r de cicuri de 4tergere5scriere $#i $#re c#
FLAS<-u !
d! 3O(')M &RAM ne.%#ti- - re#i1#t +rin #i$ent#re# %c#) &6#terie*
#cu$u#t%r- # unui $#si. RAM CMOS #tunci c@nd este neces#r un .%u$ $#re
de $e$%rie de +r%gr#$ 4i d#te ne.%#ti)Q $ut $#i r#+id) dec@t t%#te cee#te
ti+uri 4i ,)r) i$it)ri c# nu$)r de
cicuri!
e! Programarea 4+n %5stem4 (+%P-+n %5stem Programming) - ,%%sire#
un%r $e$%rii ne.%#tie de ti+ FLAS< ,#ce +%si6i) 4i '+r%gr#$#re#' unui #st,e
de $icr%c%ntr%er ,)r) #- sc%#te din siste$u 2n c#re este 2nc%r+%r#t &+r%gr#$#re
%n-ine* In SCste$ Pr%gr#$$ing-Q +r%gr#$#re# se ,#ce de regu) +rin inter$ediu
unei inter,e0e seri#e dedic#te de ti+ ISP &+%#te #.e# nu$e di,erite- s#u # unei
inter,e0e st#nd#rd STAE! E(ist) $icr%c%ntr%ere # c#re #ce#st) +r%gr#$#re se
+%#te ,#ce +rin inter$ediu +%rtuui seri# #sincr%n s#u # inter,etei CAN
&C%ntr%er Are# Net?%r>-! Este +%si6i) #st,e $%di,ic#re# cu u4urin0) # c%duui
+r%gr#$ s#u # un%r c%nst#nte de ucru &%c# s#u de # dist#n0)-re$%te u+d#te-!
Un ucru ,%#rte i$+%rt#nt este c) # #nu$ite ,#$iii inter,#0# +rin inter$ediu
c)rei# se ,#ce +r%gr#$#re# +%#te ,i utii1#t) 4i # test#re# 4i de+#n#re# #+ic#0iei
&s%,t-* +er$i0@nd re#i1#re# si$+)* cu un +re0 de c%st $ini$* # un%r $i7%#ce de
test#re 4i de+#n#re&e$u#t%#re-! De e(e$+u* 2n #cest c#1 inter,#0# STAE este
s+eci,ic#t) c# ,iind 6/)78+C& &In Circuit E$u#ti%n- +entru # #r)t# c) +%#te ,i
,%%sit) 4i +entru e$u#re# 2n circuit!
f! $ootloader 9 $ute din $icr%c%ntr%eree recente # c#re $e$%ri# de
+r%gr#$ este de ti+ FLAS< #u 4i ,#ciit#te# &#u de ,#+t instruc0iuni dedic#te
#cestui sc%+- de # +ute# 4i scrie 2n #ce#st) $e$%rie de +r%gr#$ ,)r) # utii1# un
circuit de +r%gr#$#re e(tern! Ast,e 2n $icr%c%ntr%er +%#te e(ist# +er$#nent
&re1ident- un c%d de $ici di$ensiuni &denu$it 4i 6%%t%#der- c#re +ur 4i si$+u .#
2nc)rc# +rin inter$ediu +%rtuui seri# &este d%#r un e(e$+u- c%du utii1#t%r s#u
c%nst#ntee +e c#re #cest# .re# e.entu# s) e #ctu#i1e1e! F%%t%#der-u este 4i
ce c#re #nse#1) 2n e(ecu0ie +r%gr#$u utii1#t%r du+) 2nc)rc#re# #cestui#!
8
g! Prote:area codului - +r%te7#re# c%duui +r%gr#$ dintr-% $e$%rie %c#)
ne.%#ti) 2$+%tri.# #ccesuui ne#ut%ri1#t &# citire Tde%#rece +ir#teri# s%,t e(ist)
4i #ici- este %,erit) c# % %+0iune &e# $#i tre6uie 4i ,%%sit)/- # .#ri#ntee FLAS<*
EPROM s#u OTP! C%du +%#te +r%te7#t #t@t # citire c#t 4i # scriere &+r#ctic
circuitu tre6uie 4ters* 2n#inte de # se $#i +ute# scrie ce.# 2n e-! Este ei$in#t)
#st,e +%si6iit#te# de # se re#i1#* 2n #cest c#1* de +#tc3-uri &#ter)ri cu un
#nu$it sc%+- #e c%duui %rigin#! L# .#ri#ntee $#s>-ROM +r%+riu-1is
+r%tec0i# este de cee $#i $ute %ri i$+icit)!
-! Memoria etern de program sau date
M#re# $#7%rit#te # ,#$iii%r de $icr%c%ntr%ere +er$it si utii1#re# de $e$%rie
e(tern) de +r%gr#$ &ti+ic ROM- s#u d#te &ti+ic RAM-! Ace#st# +resu+une
e(istent# si utii1#re# un%r $#gistr#e e(terne de #drese si d#te! C%ne(iunie
e(terne neces#re +entru #ceste# sunt dis+%ni6ie c# ,unc0ii #tern#ti.e #e +ini%r!
Din +)c#te* in #ce#st) situ#0ie nu$)ru de c%ne(iuni e(teri%#re dis+%ni6ie +entru
inter,#0# cu e(teri%ru se reduce dr#$#tic* reduc@nd $ut din .ers#tiit#te#
$icr%c%ntr%eruui! M#i $ut # .#ri#ntee c%nstructi.e cu un nu$)r $ic de +ini
&c%ne(iuni e(terne- nu este +%si6i) utii1#re# de $e$%rie e(tern)* dec@t*
e.entu#* intr-% .#ri#nt) cu inter,#0) seri#) &$e$%rie RAM* FLAS< s#u
EEPROM cu inter,#0) IAC* SPI* etc!- si nu$#i c# $e$%rie de d#te!
6! CONTROLUL PUTERII CONSUMATE KI ALIMENTAREA
LA TENSIUNI REDUSE
M#7%rit#te# $icr%c%ntr%ere%r +%t ,i trecute su6 c%ntr% s%,t 2n st)ri
s+eci#e cu$ #r ,i; 2n #4te+t#re &STAND-FU-* in#cti. &'IDLE'- s#u %+rit &'<ALT'*
'PO=ER DO=N'-* denu$irie #cest%r st)ri di,erind 4i ,unc0ie de ,#6ric#nt! Pn
#ceste $%duri st#re# CPU*
9
c%n0inutu RAM-uui intern* st#re# I5O-uri%r +%#te ,i c%nser.#t) 2n c%ndi0iie unei
tensiuni de #i$ent#re reduse &,#0) de ce# n%$in#)- 4i deci # unui c%nsu$ $ut
redus! Fe(i6iit#te# #cestui siste$ este str#ns eg#t# de ,#citit#tie si
+r%gr#$#6iit#te# siste$uui de gener#re # ce#suui de ucru &c%c> sCste$*.e1i
G-! De e(e$+u* 2ntr-un $%d de ti+ 'IDLE' t%#te #cti.it)0ie sunt %+rite cu e(ce+0i#
circuituui %sci#t%ruui %c# de ce#s 4i* d#c) #ceste# e(ist); circuitu '?#tc3d%g'
&ce#su de g#rd)-* circuitu de $%nit%ri1#re # %sci#t%ruui de ce#s 4i e.entu# un
te$+%ri1#t%r dedic#te &'ide ti$er'-! Putere# c%nsu$#t) este redus) # cc#! I9V*
i#r ie4ire# din #cest $%d se ,#ce
+rin reset &ini0i#i1#re- s#u +rintr-un sti$u e(teri%r &de regu) % 2ntreru+ere-!
Te$+%ri1#t%ru dedic#t +%#te sc%#te +eri%dic $icr%c%ntr%eru din #ce#st) st#re*
+entru 2nde+inire# #nu$it%r
s#rcini* du+) c#re se reintr) 2n st#re# res+ecti.)! Pn $%du'<ALT' t%#te
#cti.it)0ie sunt %+rite* tensiune# de #i$ent#re +%#te ,i
c%6%r@t) su6 .#%#re# n%$in#)* ,)r) #ter#re# st)rii &CPU* RAM* I5O-* +utere#
c%nsu$#t) ,iind $ini$)! Ie4ire# din #ce#st) st#re se ,#ce +rin reset s#u c#
ur$#re # unei cereri de 2ntreru+ere! T%#te #ceste $%duri de ucru sunt de regu)
.#%ri,ic#te 2n #+ic#0ii 2n c#re
#i$ent#re# siste$uui se ,#ce de # % surs) de ti+ 6#terie &2n ,unc0i%n#re#
n%r$#) s#u nu$#i 2n #nu$ite situ#0ii-!
Se $#i %,er) une%ri c# ,#ciit#te % +r%tec0ie # sc)dere# #ccident#) &2n
#nu$ite i$ite- # tensiunii de #i$ent#re &'6r%?n%ut +r%tecti%n'-! L# sc)dere#
tensiunii de #i$ent#re su6 % #nu$it) i$it) &'6r%?n%ut .%t#ge'- $icr%c%ntr%eru
este ini0i#i1#t &reset#t- 4i 0inut 2n #ce#st) st#re #t@t# ti$+ c@t c%ndi0i# res+ecti.)
+ersist)! Tensiune# de #i$ent#re st#nd#rd +entru $icr%c%ntr%ere # ,%st $ut
ti$+* din c%nsiderente 4i ist%rice&.e1i TTL-u-* de Lcc W HL &cu % #nu$it)
t%er#n0) -! L# %r# #ctu#) se %,er)* +entru $ute din ee* 4i .#ri#nte cu tensiune
de #i$ent#re redus) &L%? L%t#ge- cu Lcc W 1!8 !! I!IL* destin#te un%r #+ic#0ii
unde c%nsu$u este un +#r#$etru critic! E(ist) .#ri#nte cu +#7) $#re # tensiunii
de #i$ent#re* de e(e$+u Lcc W A!!6L* ,unc0i%n#re# # i$it# in,eri%#r) i$+ic@nd
d%#r % $ic4%r#re # ,rec.en0ei $#(i$e de ce#s!
10
G! SISTEMUL DE CEAS
Orice $icr%c%ntr%er este c#r#cteri1#t ce +u0in de e(isten0# circuite%r
eectr%nice #,erente %sci#t%ruui c#re genere#1) ce#su de siste$! Ast,e este
+%si6i) i$+e$ent#re# si$+) # %sci#t%ruui d%#r +rin #d)ug#re#* 2n e(teri%r* #
unui re1%n#t%r e(tern &cu#r0 s#u +ie1%cer#$ic#- +entru st#6ii1#re# ,rec.entei si
e.entu# # un%r c#+#cit%ri! D#c) st#6iit#te# si +reci1i# ,rec.en0ei nu este %
cerin0) i$+%rt#nt)* # #nu$ite $icr%c%ntr%ere se +%#te utii1e d%#r un circuit RC
e(tern s#u e(ist) un circuit RC intern* c#re deter$in) ,rec.en0# de %sci#0ie!
E(ist) $icr%c%ntr%ere # c#re c%n,igur#0i# %sci#t%ruui este +r%gr#$#6i) +rin
inter$ediu un%r X,u1i6ieD FLAS< &se +r%gr#$e#1) si$i#r $e$%riei de
+r%gr#$-; re1%n#t%r e(tern 4i ti+u #cestui#* .#ri#nt# RC intern s#u e(tern* g#$#
de ,rec.ent)* etc!
L# ,#$iiie e.%u#te de $icr%c%ntr%ere e(ist) si circuite de ti+ PLL &P3#se
L%c>ed L%%+- si5s#u FLL &FreYuencC L%c>ed L%%+- c#re +er$it $uti+ic#re# cu
u4urin0) # ,rec.en0ei de 6#1) &ce# # re1%n#t%ruui e(tern-! Ast,e +ec@nd* de
e(e$+u de # % ,rec.en0) de IA!G68R<1 se +%t %60ine ,rec.en0e de ucru +@n)
%rdinu M<1! L# #st,e de $icr%c%ntr%ere siste$u de ce#s este +r%gr#$#6i +rin
inter$ediu un%r registre s+eci#e %,erind un $#(i$ de ,e(i6iit#te 2n sensu
+utin0ei de c%ntr%# c%$+r%$isu 2ntre +utere# c%nsu$#t) 4i .ite1# $#(i$) de
ucru!
11
8! Li$6#7u de +r%gr#$#re
8!1!Li$6#7u de $#4in) 4i de ce de #s#$6#re
Li$6#7u $#4in) &instruc0iunie $#4in)- este singur# ,%r$) de
re+re1ent#re # in,%r$#0iei +e c#re un $icr%c%ntr%er % '2n0eege' &c# de #t,e
%rice #t siste$ de c#cu -! Din +)c#te #ce#st) ,%r$) de re+re1ent#re #
in,%r$#0iei este t%t# ne+r#ctic) +entru un +r%gr#$#t%r* c#re .# utii1# ce +u0in
un i$6#7 de #s#$6#re* 2n c#re % instruc0iune &% $ne$%nic) cu %+er#n1ii
#,eren0i- #re dre+t c%res+%ndent % instruc0iune 2n i$6#7 $#4in) &e(ce+0ie ,#c
$#cr%instruc0iunie dis+%ni6ie # unee #s#$6%#re-! Un +r%gr#$ 2n i$6#7 de
#s#$6#re este r#+id 4i c%$+#ct! Ace#st# nu 2nse#$n) c) un #st,e de +r%gr#$*
+r%st scris* nu +%#te ,i ent 4i de $#ri di$ensiuni* +r%gr#$#t%ru #.@nd c%ntr%u
t%t# &4i res+%ns#6iit#te# /- +entru e(ecu0i# +r%gr#$uui 4i gestiune# resurse%r!
Li$6#7u de #s#$6#re este +ri$u c#re tre6uie 2n.)0#t* c3i#r su$#r* #tunci c@nd
d%ri$ s) +r%iect)$ % #+ic#0ie 3#rd5s%,t cu un #nu$e $icr%c%ntr%er &,#$iie-* e
+er$i0@nd 2n0eegere# #r3itecturii #cestui# 4i utii1#re# ei e,icient)! Utii1#re#
nu$#i # i$6#7uui de #s#$6#re +entru de1.%t#re# unei #+ic#0ii c%$+e(e este
ne+r%ducti.) de $ute %ri* de%#rece e(ist) 4i ,#$iii de $icr%c%ntr%ere cu CPU
de ti+ CISC c#re #u un nu$)r ,%#rte $#re de instruc0iuni &(199- c%$6in#te cu
$%duri
de #dres#re nu$er%#se 4i c%$+ic#te! T%tu4i* nu tre6uie uit#t c) # %r# #ctu#)
$u0i din +r%duc)t%rii $#ri de $icr%c%ntr%ere %,er) $edii de de1.%t#re s%,t?#re
gr#tuite c#re incud +r%gr#$e #s#$6%#re
gr#tuite! De #se$ene#* c%$unit#te# utii1#t%ri%r di.erse%r ,#$iii de
$icr%c%ntr%ere # de1.%t#t 4i e#* 2n ti$+* $ute #st,e de #s#$6%#re* c#re sunt
dis+%ni6ie c# ,ree?#re!
12
8!A! Inter+retere
Un inter+reter este % i$+e$ent#re # unui i$6#7 de ni.e 2n#t* $#i
#+r%+i#t de i$6#7u n#tur#! Este de ,#+t un +r%gr#$ re1ident c#re* 2n #cest c#1*
rue#1) +e % +#t,%r$) de c#cu de ti+ $icr%c%ntr%er! C#r#cteristic +entru
e(ecu0i# unui +r%gr#$ inter+ret#t* este citire# 4i e(ecut#re# sec.en0i#) #
instruc0iuni%r &instruc0iune cu instruc0iune-! De ,#+t ,iec#re instruc0iune de ni.e
2n#t este inter+ret#t) 2ntr-% sec.en0) de instruc0iuni $#4in) c#re se e(ecut)
i$edi#t! Cee $#i r)s+@ndite inter+retere sunt cee +entru i$6#7ee FASIC 4i
FORT<!
Li$6#7u FASIC este re$#rc#6i +rin si$+it#te# 4i #ccesi6iit#te# c%duui*
d#r &2n .#ri#nt# inter+ret#t)- 4i +rin .ite1# $#i $ic) de e(ecu0ie* #cest# ,iind de
#t,e +re0u +)tit +entru utii1#re# %ric)rui inter+reter! Un e(e$+u de #st,e de
inter+reter ,%#rte r)s+@ndit 4i utii1#t este PFASIC # ,ir$ei P#r##( utii1#t +entru
+r%gr#$#re# $%due%r F#sic St#$+! Este ,%#rte u4%r de 2n.)0#t 4i +%#te ,i
utii1#t su,icient de +r%ducti. c3i#r de indi.i1i c#re #u % e(+erien0# $ini$# 2n
d%$eniu +r%gr#$)rii!
Li$6#7u FORT< este +%+u#r d#t%rit) .ite1ei de e(ecu0ie &#+r%+i#t) de
ce# %,erit) de i$6#7u de #s#$6#re- 4i +%si6iit)0ii c%nstruirii #+ic#0ii%r din +)r0i
reutii1#6ie! Este un i$6#7 $ut di,erit de i$6#7ee c#sice* c%du este destu de
greu de scris 4i de $#i #es de citit &c%du este greu i1i6i-! T%tu4i* %d#t) st)+@nit
,%#rte 6ine &2n ti$+/-* +%#te ,i ,%#rte +r%ducti. 2n #+ic#0ii cu$ #r ,i cee de c%ntr%*
2n r%6%tic)* etc! M#ree #.#nt#7 # utii1)rii unui inter+reter este de1.%t#re#
interacti# i incremental # #+ic#0iei; se scrie % +%r0iune de c%d c#re +%#te ,i
test#t) i$edi#t* instruc0iune cu instruc0iuneQ d#c) re1ut#tee sunt s#tis,)c)t%#re
se +%#te c%ntinu# cu #d)ug#re# de #st,e de +%r0iuni +@n) # ,in#i1#re#
#+ic#0iei!
O$%&'()*+&! E(ist) 4i .#ri#nte inter+ret#te #e i$6#7uui C c#re
c%nstituie % i$+e$ent#re #+r%(i$#ti.) # st#nd#rduui ANSI C! Un #st,e de
13
e(e$+u este Inter#cti.e C &Ne?t%n L#6s- c#re genere#1) c%d M%t%r%# 68<C11
4i este destu de $ut utii1#t 2n
r%6%tic)!
8!I!C%$+i#t%#re
Un c%$+i#t%r c%$6in) u4urin0# 2n +r%gr#$#re %,erit) de un inter+reter
&de ,#+t de i$6#7u de ni.e 2n#t- cu % .ite1) $#i $#re de e(ecu0ie # c%duui!
Pentru #ce#st# +r%gr#$u* 2n i$6#7 de ni.e 2n#t* este tr#ns#t#t &tr#dus- direct
2n i$6#7 $#4in) s#u 2n i$6#7 de
#s#$6#re &ur$@nd # ,i #+%i #s#$6#t-! C%du $#4in) re1ut#t #re di$ensiuni
re#ti. $#ri &d#r $#i $ici dec@t ce inter+ret#t- 4i este e(ecut#t direct* c# un t%t*
de $icr%c%ntr%er! De regu) c%du gener#t +%#te ,i %+ti$i1#t ,ie c# di$ensiune*
,ie c# ti$+ de e(ecu0ie! Se +%t enu$er# c%$+i#t%#re +entru i$6#7ee; C*
FASIC* P#sc#* PL5M &Inte-* F%rt3! Cee $#i +%+u#re 4i utii1#te sunt cee +entru
i$6#7u C* un i$6#7 uni.ers# ,%%sit #t@t +entru su+er c%$+utere cu$ #r ,i Cr#C-
u* c@t 4i de $icr%c%ntr%eree de 4 6i0i! Este un i$6#7 +uternic 4i ,e(i6i* c#re
de4i de ni.e 2n#t* +%#te +er$ite 4i #ccesu direct # resursee siste$uui de
c#cu! Un +r%gr#$ 6ine scris genere#1) un c%d r#+id 4i c%$+#ct! T%tu4i* de
$ute %ri* +%r0iuni critice din +unct de .edere # .ite1ei de e(ecu0ie* tre6uie 2nc)
scrise 2n i$6#7 de #s#$6#re! E(ist) nu$er%#se i$+e$ent)ri* +entru
$#7%rit#te# ,#$iii%r de $icr%c%ntr%ere! Cu #nu$ite i$it)ri eg#te de #r3itectur)
4i $#i #es resursee $icr%c%ntr%eruui* #sigur) porta"ilitatea unei #+ic#0ii
scris) +entru un #nu$it ti+ &,#$iie- de $icr%c%ntr%er # un #t ti+ &,#$iie-!
Pentru unee ,#$iii n%i 4i ,%#rte +uternice de $icr%c%ntr%ere* d#t%rit)
c%$+e(it)0ii setuui de instruc0iuni 4i # nu$er%#se%r $%duri de #dres#re* este
descur#7#t) 2n $%d e(+icit utii1#re# i$6#7uui de #s#$6#re 2n $%$entu 2n
c#re se +r%gr#$e#1) #+ic#0ii +er,%r$#nte! Unit#te# centr#) # #cest%r n%i
$icr%c%ntr%ere # ,%st +r%iect#t) 4i %+ti$i1#t) +entru utii1#re# un%r i$6#7e de
14
ni.e 2n#t! Func0ie 4i de ,#$ii# de $icr%c%ntr%ere 2n c#u1)* +re0u un%r #st,e de
c%$+i#t%#re &de C- +%#te ,i destu de ridic#t* 2nce+@nd cu (199USD 4i #7ung@nd
# (1999USD! E(ist) ins# 4i .#ri#nte ,ree?#re de c%$+i#t%#re de C* cu$ #r ,i
gcc c#re este % +%rt#re # c%$+i#t%ruui
%$%ni$ din Linu( 2n u$e# $icr%c%ntr%ere%r! E(ist) i$+e$ent)ri di,erite #e
#cestui c%$+i#t%r c#re genere#1) c%d +entru ,#$iii di,erite de $icr%c%ntr%ere
&de e(e$+u ALR* MSP4I9* 68<C11* etc!-!
O$%&'()*++ ;! Pentru #! 4i c! c%du este %60inut cu #7ut%ru unui mediu
integrat de dez#oltare a programelor (+<&-+ntegrated <e#elopment
&n#ironment) c#re c%n0ine 2n $%d ti+ic ur$)t%#ree c%$+%nente s%,t?#re; un
edit%r s+eci#i1#t &%rient#t +e c%du surs)-* un #s#$6%r5c%$+i#t%r* un edit%r de
eg)turi5%c#t%r &'in>- edit%r5%c#t%r'-* +r%gr#$e de gestiune # un%r 6i6i%teci de
c%d &'i6r#ri#ns'-* +r%gr#$e de c%n.ersie # ,%r$#te%r de re+re1ent#re # c%duui
&de e(e$+u din 6in#r 2n ,%r$#t Inte <EZ s#u M%t%r%# S- 4i* nu 2n uti$u r@nd*
un simulator i8sau depanator &'de6ugger'-!
=! C%du #st,e %60inut tre6uie 2nc)rc#t 2n $e$%ri# de +r%gr#$ # $#4inii
0int) unde .# ru#* ,iind de ,#+t +r%gr#$#t 2ntr-% $e$%rie de ti+ &EP-ROM5FLAS<
s#u 2nc)rc#t direct &u+%#ded- 2ntr-% $e$%rie de ti+ RAM!
15
II! UTILI8AREA
MICROCONTROLERULUI PIC16F84 IN
CIRCUITUL UNUI SISTEM DE ALARMA
;!<escrierea microcontrolerului P+C;>0?@
P+C;>0?@ #+#r0ine unei c#se de $icr%c%ntr%ere de 8 6i0i cu #r3itectur) RISC!
Structur# ui gener#) este #r)t#t) 2n sc3i0# ur$)t%#re re+re1ent@nd 6%curie de
6#1)!
16
%emnificaia pinilor
PIC16F84 #re un nu$)r t%t# de 18 +ini! Ce $#i #dese# se g)se4te 2ntr-%
c#+su) de ti+ DIP18 d#r se +%#te g)si de #se$ene# 4i 2ntr-% c#+su) SMD c#re
este $#i $ic) c# ce# DIP! DIP este +rescurt#re# de # Du# In P#c>#ge! SMD
este +rescurt#re# de # Sur,#ce M%unt De.ices suger@nd c) g)urie +entru +ini
unde s) intre #ce4ti#* nu sunt neces#re 2n i+ire# #cestui ti+ de c%$+%nent)!
Pinii $icr%c%ntr%eruui PIC16F84 #u ur$)t%#re# se$ni,ic#0ie;
Pin nr!1 ')= A d%ie# +in # +%rtu A! Nu #re ,unc0ie #di0i%n#)!
Pin nr!A ')A A treie# +in # +%rtu A! Nu #re ,unc0ie #di0i%n#)!
Pin nr!I ')@ A +#true# +in # +%rtu A! TOCR1 c#re ,unc0i%ne#1) c# ti$er se
g)se4te de #se$ene# # #cest +in!
Pin nr!4 MC1' Resete#1) intr#re# 4i tensiune# de +r%gr#$#re L++ #
$icr%c%ntr%eruui!
Pin nr!H (%% Ai$ent#re* $#s)!
Pin nr!6 '$B Pin de 1er% # +%rtu F! Intr#re# Pntreru+ere este % ,unc0ie
#di0i%n#)!
Pin nr!G '$; Pri$u +in # +%rtu F! Nu #re ,unc0ie #di0i%n#)!
Pin nr!8 '$= A d%ie# +in # +%rtu F! Nu #re ,unc0ie #di0i%n#)!
Pin nr!: '$A A treie# +in # +%rtu F! Nu #re ,unc0ie #di0i%n#)!
Pin nr!19 '$@ A +#true# +in # +%rtu F! Nu #re ,unc0ie #di0i%n#)!
Pin nr!11 '$C A cincie# +in # +%rtu F! Nu #re ,unc0ie #di0i%n#)!
17
Pin nr!1A '$> A 4#see# +in # +%rtu F! Lini# de [C%c>[ 2n $%d +r%gr#$#re!
Pin nr!1I '$D A 4#+tee# +in # +%rtu F! Lini# [D#t#[ 2n $%d +r%gr#$#re!
Pin nr!14 (dd P%u +%1iti. # sursei!
Pin nr!1H O%C= Pin dese$n#t +entru c%nect#re# # un %sci#t%r!
Pin nr!16 O%C; Pin dese$n#t +entru c%nect#re# # un %sci#t%r!
Pin nr!1G ')= A d%ie# +in # +%rtu A! Nu #re ,unc0ie #di0i%n#)!
Pin nr!18 '); Pri$u +in # +%rtu A! Nu #re ,unc0ie #di0i%n#)!
PIC1684 #re % #r3itectur) RISC! Acest ter$en este #dese%ri g)sit 2n
iter#tur# des+re c#cu#t%#re* 4i #re ne.%ie s) ,ie e(+ic#t #ici $#i 2n det#iu!
Ar3itectur# <#r.#rd este un c%nce+t $#i n%u dec@t .%n-Neu$#nn! S-# n)scut
din ne.%i# de $)rire # .ite1ei $icr%c%ntr%eruui! Pn #r3itectur# <#r.#rd* 6us-u
de d#te 4i 6us-u de #drese sunt se+#r#te! Ast,e este +%si6i un $#re de6it de
d#te +rin unit#te# de +r%ces#re centr#)* 4i 6ine2n0ees* % .ite1) $#i $#re de
ucru! Se+#r#re# +r%gr#$uui de $e$%ri# de d#te ,#ce +%si6i c# $#i de+#rte
instruc0iunie s) nu tre6ui#sc) s) ,ie cu.inte de 8 6i0i! PIC16F84 ,%%se4te 14 6i0i
+entru instruc0iuni cee# ce +er$ite c# t%#te instruc0iunie s) ,ie instruc0iuni dintr-
un singur cu.@nt
APLICATII
PIC16F84 se +%tri.e4te +er,ect 2n $ute ,%%sin0e* de # industriie #ut% 4i
#+ic#0iie de c%ntr% c#snice # instru$entee industri#e* sen1%ri # dist#n0)*
$@nere eectrice de u4i 4i dis+%1iti.ee de securit#te! Este de #se$ene# ide#
+entru c#rdurie s$#rt c# 4i +entru #+#r#tee #i$ent#te de 6#terie din c#u1#
c%nsu$uui ui $ic!
Me$%ri# EEPROM ,#ce $#i u4%#r) #+ic#re# $icr%c%ntr%ere%r #
#+#r#te unde se cere $e$%r#re# +er$#nent) # di,erit%r +#r#$etri &c%duri +entru
tr#ns$i0)t%#re* .ite1# $%t%ruui* ,rec.en0ee rece+t%ruui* etc!-! C%stu sc)1ut*
18
c%nsu$u sc)1ut* $@nuire# u4%#r) 4i ,e(i6iit#te# ,#c PIC16F84 #+ic#6i c3i#r 4i
2n d%$enii unde $icr%c%ntr%eree nu #u ,%st +re.)1ute 2n#inte &e(e$+e; ,unc0ii
de ti$er* 2n%cuire# inter,e0ei 2n siste$ee $#ri* #+ic#0iie c%+r%ces%r* etc!-!
Pr%gr#$#6iit#te# siste$uui #cestui ci+ &2$+reun) cu ,%%sire# # d%#r d%i +ini 2n
tr#ns,eru de d#te- ,#ce +%si6i) ,e(i6iit#te# +r%dusuui* du+) ce #s#$6#re# 4i
test#re# #u ,%st ter$in#te! Ace#st) c#+#6iit#te +%#te ,i ,%%sit) +entru # cre#
+r%duc0ie +e inie de #s#$6#re* de # 2n$#g#1in# d#te de c#i6r#re dis+%ni6ie
d%#r du+) test#re# ,in#)* s#u +%#te ,i ,%%sit +entru # 2$6un)t)0i +r%gr#$ee #
+r%dusee ,inite!
A!DESCRIEREA SISTEMULUI DE ALARMA
Siste$u de ##r$# este +r%iect#t # ,i utii1#t +entru us#* si #re in
c%$+%nent# s# ur$#t%#ree c%$+%nente;
+ic16,84- 1 6uc
+ressure +#d&sens%r de +resiune-- 1 6uc
6#terie de H .-1 6uc
#tc3ing %gic in+ut- A 6uc
c%$ut#t%#re&SPDT*SPST--A 6uc
#,is#7-6 6uc &se +%t ,%%si si eduri de di,erite cu%ri* +t reducure#
c%stuui-
##r$#-1 6uc
tr#ns$it#t%r r#di%-1 6uc
Descriere# ,uncti%n#rii siste$uui de ##r$#;
circuitu este #i$ent#t de # % 6#terie de H.* c#re #re un c%$ut#t%r
+entru intreru+ere# #i$ent#rii ,#r# # ,i ne.%ie de sc%#tere# 6#teriei!
19
sen1%ru de +resiune .# ,i $%nt#t in interi%ru c#sei* +e +%de#* #
#+r%(i$#ti. 1H-AH c$ de +r#gu usii!
siste$u ,i set#t +e A +%1itii;)C)%) si P1&C)/!C#nd +%1iti# )C)%)
este seect#t# $icr%c%ntr%eru .# tri$ite un se$n# c#re .# #cti.e un #,is#7
&B%&/)/ P& )C)%)D-Q c#nd sen1%ru de +resiune se dec#nse#1# .# tri$ite un
se$n# $icr%c%ntr%eruui c#re # r#ndu ui .# #cti.# un #,is#7 &BC+3&() &%/&
1) U%)D- si ##r$# c#re du+# I secunde se .# de1#cti.#* #,is#7u r#$#n#nd
#cti. +#n# # #cti.#re# ui '&%&/!D#c# este seect#t# +%1iti# P1&C)/*
$icr%c%ntr%eru .# tri$ite un se$n# unui #,is#7 &B%&/)/ P& P1&C)/D-* i#r
c#nd .# +ri$i i$+us de # sen1%ru de +resiune* si ti$+ de H secunde '&%&/ nu
.# ,i in +%1iti# O3* se .# #cti.#; #,is#7u B%P)'7&'&D* ##r$#* si un tr#ns$it#t%r
r#di% &BM&%)6D- c#re .# tri$ite un $es#7 +e tee,%n +r%+riet#ruui c#seiQ #cest
cicu se re+et# # inter.# de I secunde +#n# c#nd .# ,i #cti.#t '&%&/!
su+i$ent#r* $#i #.e$ A #,is#7e re,erit%#re # '&%&/* c#re ne #7ut# s#
sti$ in ce +%1itie este; '&%&/ +% O3 si '&%&/ +% O00!
I!REPRE8ENTARI ERAFICE
In ,igurie de $#i 7%s sunt re+re1ent#te c#6#7u eectric* di#gr#$ee de
,uncti%n#re* $%nt#7u +e +#cut#* c#6#7u eectric si % re+re1ent#re gr#,ic# #
siste$uui de ##r$#!
20
21
22
23
24
25

S-ar putea să vă placă și