Está en la página 1de 2

UNIVERSIDAD TECNOLGICA DEL PER FISE SISTEMAS DIGITALES

EJEMPLO: CONFECCIONAR UN PROGRAMA PARA EL PIC 16F84A TRABAJANDO A 4MHZ QUE


PRODUZCA UNA SEAL CUADRADA DE PERIODO 50 m !"5 m A NI#EL ALTO $ "5 m A NI#EL
BAJO% EN EL PIN RB0&
Para generar la seal cuadrada en la a!"lla del #"cr$c$n!r$lad$r R%& r$cedere#$s de la s"gu"en!e
#anera' $ndre#$s el ("! R%& a )*+ e,ecu!are#$s un ru!"na -su(r$gra#a. encargada de real"/ar un
re!ard$ de 01 #s2 $ndre#$s de nue3$ el ("! R%& a )&+ 4 3$l3ere#$s a e,ecu!ar la su(ru!"na an!er"$r5 Es!e
r$ces$ se ree!"r6 "nde7"n"da#en!e5
Una de las 7unc"$nes #6s 8a("!uales en l$s r$gra#as de c$n!r$l suele ser de!er#"nar "n!er3al$s c$ncre!$s
de !"e#$5 Ta#("9n suele ser 7recuen!e c$n!ar "#uls$s r$duc"d$s en el e:!er"$r del s"s!e#a5 En el
#"cr$c$n!r$lad$r PIC*;F<= es!as 7unc"$nes la real"/a un !e#$r"/ad$r>c$n!ad$r de < ("!s? lla#ad$ TMR&
@ue ac!Aa de d$s #aneras d"s!"n!as'
C$#$ c$n!ad$r de suces$s? reresen!ad$s $r l$s "#uls$s @ue se al"can a la a!"lla RA=>T&CBI5 Al
llegar al 3al$r FF8 se des($rdar6 el c$n!ad$r 4? c$n el s"gu"en!e "#uls$ asa a &&8? ad3"r!"end$ es!a
c"rcuns!anc"a ac!"3and$ un seal"/ad$r 4>$ r$3$cand$ una "n!erruc"Cn5
C$#$ !e#$r"/ad$r? se "ncre#en!a c$n cada c"cl$ de "ns!rucc"Cn -=>Frel$,.?$ d"3"s$res del #"s#$? 8as!a
@ue se des($rda -asa de &&8 a FF8. 4 a3"sa $n"end$ a )*+ un seal"/ad$r 4>$ r$3$cand$ una
"n!erruc"Cn5
Para @ue el TMR& 7unc"$ne c$#$ c$n!ad$r de "#uls$s al"cad$s en RA=>T&CBI 8a4 @ue $ner a )*+ el ("!
T&CS? @ue es el @ue $cua la $s"c"Cn 1 del reg"s!r$ OPTION5 Para @ue el TMR& 7unc"$ne c$#$
!e#$r"/ad$r el ("! T&CS de(e $nerse a )&+5
F'()*+& Reg"s!r$ OPTION -d"recc"Cn &*8? %anc$*.
T&CS T&SE PSA PS0 PS* PS&
%"!1 %"!&
D ("! 1' T0CS ("! de selecc"Cn de la 7uen!e de rel$,
* E Trans"c"Cn en el "n RA=>T&CBI
& E C"cl$ de "ns!rucc"Cn "n!ern$
D ("! F' PSA ("! de as"gnac"Cn del d"3"s$r
* E D"3"s$r as"gnad$ al GDT -Ha!c8d$g.
& E D"3"s$r as"gnad$ a TMR&
D ("! 0I&' PS":PS0 ("! de selecc"Cn del d"3"s$r
TMR0 es un reg"s!r$ de r$Cs"!$ esec"al u("cad$ en la $s"c"Cn &*8 del (anc$ & de la #e#$r"a de da!$s
RAM5 En "gual d"recc"Cn er$ en el (anc$ * se encuen!ra el reg"s!r$ de c$n7"gurac"Cn OPTION5
El !"e#$ de la !e#$r"/ac"Cn se calcula a ar!"r del er"$d$ de la seal de rel$, -Trel$,.? el 3al$r de un
d"3"s$r de 7recuenc"a de7"n"d$ en el reg"s!r$ OPTION 4 el 3al$r del !e#$r"/ad$r TMR05
T,m-.*'/+0'12 3 44T*,5.6 4 !"55 7 TMR0% 4 D'8'.*
"557TMR03T,m-.*'/+0'129!4 4T*,5.6 4 D'8'.*%
S" se desea !e#$r"/ar 01#s -01&&& #s. 4 as"gna#$s al d"3"s$r de 7recuenc"a el 3al$r *0< -PSA E+&+? PS0
E )*+? PS* E+*+? PS& E )&+.? el !e#$r"/ad$r TMR& de(er6 c$n!ar *J1 e3en!$s'
"55 7TMR0 3 "54107: 9 !141076 4 1"8% 3 1;5<:

El 3al$r @ue 8a4 @ue cargar en el !e#$r"/ad$r TMR& ser6 el c$#le#en!$ de *J1? es dec"r? 011I*J1E ;&?
@ue e@u"3ale al cCd"g$ 8e:adec"#al &:Fc5
F'()*+& Reg"s!r$ INTCON5
Al cargar en el reg"s!r$ TMR0 el 3al$r 60? 9s!e se
"ncre#en!ar6 cada 1"8m !0'05. =,>'2'=. -.*:
D'8'.* 4 4 4 T*,5.6 %&
Cuand$ llegue al 7"nal de la cuen!a -"55.? se
habr incrementado 195 veces? generand$ un
re!ard$ de ar$:"#ada#en!e 01#s'
DOCENTE' ING5 Lu"s Pac8ec$ Cr"("ller$
PS0 PS* PS& TMR& GDT
& & & * ' 0 * ' *
& & * * ' = * ' 0
& * & * ' < * ' =
& * * * ' *; * ' <
* & & * ' F0 * ' *;
* & * * ' ;= * ' F0
* * & * ' *0< * ' ;=
* * * * ' 01; * ' *0<
UNIVERSIDAD TECNOLGICA DEL PER FISE SISTEMAS DIGITALES
!1;5 4 1"8m%5 En ese "ns!an!e se $ndr6 )*+ el ("! T&IF del reg"s!r$ INTCON -reg"s!r$ de r$Cs"!$ esec"al
&:&% del (anc$ &? F"gura arr"(a.5
Aarecen en el cCd"g$ las s"gu"en!es
"ns!rucc"$nes'
call k: guarda la d"recc"Cn de la
"ns!rucc"Cn ac!ual 4 sal!a a la
d"recc"Cn k -d$nde se encuen!ra la
su(ru!"na.5
return: re!$rna a la d"recc"Cn
al#acenada5 Una 3e/ e,ecu!ada la
su(ru!"na el r$gra#a 3uel3e a la
$s"c"Cn de la #e#$r"a de r$gra#a
$s!er"$r a la lla#ada call5
A c$n!"nuac"Cn se e:$ne el d"agra#a de
7lu,$ 4 el cCd"g$ ensa#(lad$r del
r$gra#a'
L"s! E*;7<=A
STATUS e@u &:&F
PORT% e@u &:&;
TMR& e@u &:&*
INTCON e@u &:&%
$rg &:&&
g$!$ INICIO
$rg &:&1
INICIO
%s7 STATUS?1 2ca#("a al (anc$*
clr7 PORT% 2PORT% sal"das
#$3lH (+&&&&&**& 2c$n7"gurac"Cn OPTION
#$3H7 TMR&
(c7 STATUS?1 2ca#("a al (anc$&
%UCLE
(c7 PORT%?& 2R%& E )&+
call RETARDO 2re!ard$
(s7 PORT%?& 2R%& E )*+
call RETARDO 2re!ard$
g$!$ %UCLE
RETARDO
(c7 INTCON?0 2desc$nec!a el 7lag de des($rda#"en!$
#$3lH &:Fc
#$3H7 TMR& 2carga TMR&
EKPLORA
(!7ss INTCON?0 2LSe 8a des($rdad$ TMR&M
g$!$ EKPLORA 2(ucle 8as!a @ue TMR& llegue a 01;
re!urn
end
DOCENTE' ING5 Lu"s Pac8ec$ Cr"("ller$

También podría gustarte