Professional Documents
Culture Documents
Training Report On Embedded System
Training Report On Embedded System
c
cccccc
c
c c c
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c
cc
cccccccccccccccccccccccccccccccccccccccccccccccccccccc
c
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c
c c
c
c c
c
c c
c
c c
c
c
c
c
c
c
c
cc
p
c
c
c
c c
c
c
c
c
c
c
c
c
c
ccc
c
c
c
c
c
ccc
c
c
c c c
c
!c "
#
c
c
c
$c "
#
#c
c
%c#
c&
c
c
c
## c
#c
c
c
#c'#c
###c
c
c()c*( +c) c
#,c
c
c c&
c#c
c
c-
.
c
c
c&
cc
c
c
#c
c
!c(c*(/c
#c#,c
c
$c&
c
c
c
%c"
#cc01 +c
c
c
c
c
c
c
ccccc!"c#$%%&c#'(#c"c$))c$(c!cc" ""c$%c"c$'')*$(%"c
%ccc+$#("c,)"c(,c#$)c-(#).c/c$#c)+%&c%c!cc/(#).c/c$#c
"##(%cc-!c$% cc'#(*"c$%c(#c$) c),c)$#&) c'%"c
(%c'#('#c,%*(%%&c(,c!"c&$&".c)+"(%0c$(0cc')$ #0c/$"!%&c
$*!%c(#c*#(-$+cc+%c%c(#c1*!%0c$#c#$#"0c**""c(%#())#"0c
2$)c+*"c(,c(#c"'$*c%$)c"c(c(c$% c(,c(#c$"1"cc+# c,,*+) cc
'$#cc,#(cc$))c!"c0c$% cc*(%#())#"cc%c(#cc*$#cc$1cc*$#cc(,cc
*$#c('#$(%"cc-%c!cc'#".c))cc1%"c(,c$&$3%"cc$%cc4(#%$)"c
#&)$#) c"!c(c$)"c$(c)$"c*!%()(&"0c%-c+*"5cc$'')*$(%"c
-!*!c$1c"c)+c!$c(#c$"*c"#++$)c"c*(%#())c c!"cc
'#(*".c(-c-c*$%c$&#c(c!c,$*c!$c!"cc'#(*"c!$+c
"**"",)) cc%+$c%(c(#c+$"cc-(#).cc/!$c"c!"cccc "6c
!(#*$)) c$%cc*(%#())#c"c*(%$(%c(,c'*c(,c*#('#(*""(#c
$"c!$#-$#c$%c!c"$)c"(,-$#c(c%#$1c$c"'*,*c$"1.c
c
c
c
c
c
ccc c -()c )1c (c 7'#""c c "%*#c &#$c (c CETPA infotechc ,(#c &+%&c c $%c
(''(#% c (c %#&(c c %"#$)c #$%%&c ,(#c ,(#c -1c $"c -))c $"cc
,(#c '#(+%&c c !c 1%(-)&c (,c c ".c -()c $)"(c )1c (c
!$%1c (c $))c !c *!%*$)c 7'#"0c %&%#"c $%c 7*+"c ,(#c 7')$%%&c '#$**$)c
$"'*"c(,c!c!(#*$)c1%(-)&.c
ccccccc cc&#$"cccc%c*#$%&c!"c'#(4*c&("c(c!c*!%*$)c7'#"cMr. Vineet Guptac
!$%1c (c(c #c,(#c%*(#$&%&cc+# c"'c(,c!c-$ .c
cccccccc$c') c%c(c ccMr.A.K.Mehrotrac-!("c!)'0c")$%&c"&&"(%"c$%c
%*(#$&%"c-$"c$)-$ "c-!cc
c c
c
c
c
c
c
cc+
c
c
c
c!c""(%c(,c2c"c(c-(#1c,(#c!c'#(((%c(,c*('#c*$(%c$%c*!%()(& c%c
%$c $%c $#($.c 2c "c $c &#('c (,c '#(,""(%$)"c -!(c $#c -(#1%&c ,(#c !c '#(((%c (,c
*!%()(& .c 2c '#(+"c ('%c ')$,(#c ,(#c !c +)('%c (,c !c +$#("c *('#c
"(,-$#.c/c$#c!c'$#c(,c%7c2#(((%c#&$%3$(%.cc
c
CETPA Objectives c
Rc 2#((%&c('#c*$(%c8c*!%()(& cc
Rc '%c')$,(#c,(#c!c+)('%c4("cc
Rc 2#(+c/(#)c)$""c('#c*$(%cc
Rc #&$%3c2$'#c2#"%$(%c8c933"cc
Rc #&$%3c(%,#%*"c8c %$#"cc
Rc ())$(#$(%c-!c(!#c%"cc
Rc $%*!c"$#*!c2$'#c8c2#(4*"c(,c!c#"cc
Rc "$#*!c,(#c+$%*c*!%()(& cc
Rc (%(#c"$%%&c2#"(%$)"cc
c
c
c
cc
CETPA Education c
2c "c $%c $""(*$(%c *$c ,(#c "'#$%&c $+$%*c *('#c *$(%c (c $))c (+#c !c
-(#).c 2c '#(+"c *('#c *$(%c %c $+$%*c *!%()(& c *(#""c )1c
:0c ;0c
0c c 0c c c 0c c 0c 2#(
c (#c *!$%*$)c 8c
)*#(%*"c"%"0c.0c0cc;0c0c </c c*.cc
c
c
CETPA Research & Development c
2c "c -(#1%&c *(%%(") c %c "$#*!c $%c +)('%c ,)c ,#(c !c +# c &%%%&c
.2c!$"c+)('c$c%#c(,c$+$%*c"(,-$#c$%c*##%) c-(#1%&c%c,())(-%&c$%c
'#(4*"cc
Rc (%&"(%c(%#()c%c/#)""c#$,,*cc
Rc $)cc *!)%&c,(#c($*cc!*)"cc
Rc +$%*%c%c*#('#(*""(#"c*!%()(& cc
Rc 2c%7c
c
CETPA Open Platform c
2c "c $%c $""(*$(%0c -!*!c "c '#(+%&c ('%c ')$,(#c ,(#c "(,-$#c +)('%.c #c
!%1%&c "c !$c +)('%c (()"c "!()c c '#(+c ,#c (,c *("c "(c !$c !c *!%()(&*$)c
$+$%*%c $%c #,%%c *$%c $1c ')$*c %!%#.c %c !"c ""(%c +# (%c "c %+c
.2c %7c "c $c "'*$)c ,)$+(#c (,c %7c !$c *$%c c $") c ('3c $%c *"(3c ,(#c 4"c
$(c$% c$'')*$(%c(#c%c.7#c'#,(#$%*0c*(%,&#$) c$%c$c('
%(*!c"#c$%c
+)('#c*(% c$#c$))c!$))$#1"c(,c!c2c7'#%*.cc
c
CETPA E-Magazine
2c
$&$3%c"c!c"c-$ c(c&+c%-c*(#"c$c*!$%*c(c"!(-c!#c$) c.!#(&!c
$&$3%"c(#c"%c#"c*$%c&+c!#c$#*)"0c'#(4*"0c8c!(&!"c(c2.c!"c
$&$3%"c %(c (%) c !$+c $"c (,c %-c *(#"c c $)"(c !""c (,c -))
1%(-%c "*%""0c
'#(,""(%$)"c$%c'#(,""(#".cc
c
CETPA Club
c
2c!$"c-(c '"c(,c*)"c,(#c'#(,""(%$)c$%c"%.c#"c(,c!c'#(,""(%$)c*)c
$#c'#(,""(%$)"c,#(c+$#("c($%"c-!(c$#c-(#1%&c"#(") c,(#c!c,),))%c(,c2c
(4*+".c!c#"c(,c!c"%"c)c$#c!c"%"c-!(c$#c'#(+c')$,(#c c
2c (c '#"%c !#c #"$#*!c '$'#"0c $%c (c "!$#c !#c +-"c -!c (!#c #"c (,c !c
*).c 2#(4*"c "c c !c "%"c $#c "'(%"(#c %c !c %$(%$)c $%c %#%$(%$)c
"%$#"c,(#c'$'#c'#"%$(%c$%c')"!%&.cc
c
c
c c
c
#
#c +c
c c #
'
#c c c c +
c
c c
#c +c +
c
1
#cc+
c
'
cc
+ cc
c
#c-+#c
'
c+#c
c
c##1
cc#
c+
#cc+##cc###cc
c
+c-+c#cc
c
/#
c
c
c c
###2c c +
c #c
#c
c
c 1c c
3
c
+
#c #
+c #c
2c 4c
#2c
#c c +
c +
c
# c c +
c
'
c c +
c
c
#
c c
c c
c
#c -+
#
c
c
#c
c 1+c
##c c
+
#c -+c #c +c +
c #c
+c
c c
2cc+cc
c1
cc#cc
c
c1c
c
c
c
c
c
c
c
ccc
c
c
*#(*(%#())#0c $"c !c %$c "&&""0c $#c "$))c *(%#())#".c ! c $#c )1c "%&)c *!'c
*('#"c !$c $#c (,%c c %(c (!#c " ""c(c ,%*(%c $"c '#(*""%& *(%#())%&c
%.c<(#c7$')0c!c#(c*(%#()c (c$#c"%&c'#($) c!$"c*#(*(%#())#"c%"c!$c
(c *(%&c $%c (!#c *(%#())%&c ,%*(%".c ! c $#c $)"(c "c %c $(()"0c -$"!%&c
$*!%"0c*#(-$+c(+%"0c( "c...c*0c-!#c$($(%c"c%.c
!c1 c,$#"c(,c*#(*(%#())#"c%*)=c
> &!c%&#$(%c(,c<%*(%$) c
> *#(*(%#())#"c"("c$#c*$))c"%&)
*!'c*('#"c*$"c! c!$+c(%
*!'c
(# c$%c c*#*# c$%c(!#c*#*#"c!$c%$)c!c(c,%*(%c$"c"$))c
"$%$)(%c*('#"c-!(c(!#c"''(#%&c*#*# .c
> <)c2#(&#$$) 0c<)7) c
> *#(*(%#())#"c(,%c"c2c(#c2c$"c!#c"(#$&c+*c(c$))(-c,)c
'#(&#$c$) c"(c! c$#c,)7)c(c".c%*c!c'#(&#$c"c"c(cc*(##*c!%c)$#&c
?$%"c(,c*#(*(%#())#"c*$%cc'#(&#$c(cc"c%cc" "".c
> $" c(c
"c
"") c )$%&$&c "c (,%c "c %c *#(*(%#())#"c $%c "%*c ! c "$)) c ,())(-c c
$#*!*#0c !c %"#*(%c "c "c "$)).c !c +)('%c '$*1$&c (,c *#(*(%#())#"c (,%c
%*)"c $%c $"")#0c $c ")$(#0c $c '#(&#$#c (c @#%@c !c *!'c $%c $c (%"#$(%c
($#.c (c '$*1$&"c %*)c $c !&!c )+)c )$%&$&c *(')#c "*!c $"c $c (')#c $%c (#c
"('!"*$c)#$#"c
c
c
c
c
c
("c*#(*(%#())#"c-))c$)"(c*(%c(!#c+*"c"*!c$"=c
> c#c()c(c$))(-c!c*#(*(%#())#c(c'#,(#c$"1"c,(#c*#$%cc'#(".c
> c"#$)c c'(#c(c$))(-c$$c(c,)(-c-%c!c*#(*(%#())#c$%c(!#c+*"c
"*!c$"c$c2c(#c$%(!#c*#(*(%#())#.c
> %cc(c$))(-c!c*#(*(%#())#c(c$**'c$%$)(&c%'c$$c,(#c'#(*""%&.c
Pin Configurationlcc
'') c+()$&.c
#(%.c
2(#cc"c$%cA
c('%
#$%c
#*(%$)c c'(#.c"c$%c('c'(#0c$*!c'%c*$%c"%1c&!c
c%'".c/!%c"c$#c-#%c(c'(#cc'%"0c!c'%"c*$%cc"c$"c!&!c'$%*c%'".c
2(#cc$ c$)"(cc*(%,&#c(cc!c)')7c)(-c(##c
$%c('"c!c*(c "c#%&c'#(&#$c+#,*$(%.c7#%$)c'))c'"c$#c#?#c#%&c
'#(&#$c+#,*$(%.c
c
(##c$#""c "c#%&c<)$"!c'#(&#$%&c$%c+#,*$(%.cc
2(#cc"c$%c A
c
#*(%$)c c'(#c-!c %#%$)c'))
'".c!c2(#cc('c,,#"cc*$%c
"%1 "(#*c ,(#c c %'".c /!%c "c $#c -#%c (c 2(#c c '%"c ! c $#c '))c !&!c c !c
%#%$)c '))
'"c $%c *$%c c "c $"c %'".c "c %'"0c 2(#c c '%"c !$c $#c 7#%$)) c %&c
'))c)(-c-))c"(#*c*##%cGHc*$"c(,c!c%#%$)c'))
'".c2(#cc"c!c!&!
(##c
$#""c c #%&c ,*!"c ,#(c 7#%$)c '#(&#$c (# c $%c c #%&c $**"""c (c 7#%$)c
$$c (# c !$c "c F
c $#"""c G:c Ic 2H.c %c !"c $'')*$(%0c c ""c "#(%&c
%#%$)c '))
'"c -!%c %&c ".c #%&c $**"""c (c 7#%$)c $$c (# c !$c "c A
c
$#"""cG:cIcH0c2(#cc"c!c*(%%"c(,c!c2c '*$)c<%*(%c&"#.c2(#cc
$)"(c #*+"c !c !&!
(##c $#""c "c $%c "(c *(%#()c "&%$)"c #%&c <)$"!c '#(&#$%&c
$%c+#,*$(%.cc
c
#""c$*!c%$)c('c')"c,(#c)$*!%&c!c)(-c c(,c!c$#""c#%&c$**"""c(c
7#%$)c(# .c!"c'%c"c$)"(c!c'#(&#$c')"c%'cG2Hc#%&c<)$"!c'#(&#$%&.c%c
%(#$)c('#$(%cc"cc$c$c*(%"$%c#$c(,c Fc!c("*))$(#c,#?%* 0c$%c$ cc
"c,(#c7#%$)c%&c(#c*)(*1%&c'#'("".c(0c!(-+#0c!$c(%ccc
? p
2#(&#$c (#c %$)c "c !c #$c "#(c (c 7#%$)c '#(&#$c (# .c /!%c !c ABCc "c
7*%&c *(c ,#(c 7#%$)c '#(&#$c (# 0c 2 c "c $*+$c -*c $*!c $*!%c * *)0c
7*'c!$c-(c2 c$*+$(%"c$#c"1''c#%&c$*!c$**""c(c7#%$)c$$c(# .cc
p
%'c(c!c%+#%&c("*))$(#c$'),#c$%c%'c(c!c%#%$)c*)(*1c('#$%&c*#*.c
p'c,#(c!c%+#%&c("*))$(#c$'),#.
c
c
!"
!c2#(&#$c $"c/(#cG2 /Hc*(%$%"c"$"c"c!$c#,)*c!c*##%c"$c(,c!c2
.c
!c2 /0c"!(-%c%c<&#c0c#""c%c <c"'$*.c!c2 /c*(%$%"c!c$## c0c!c7)$# c
$## cG,(#cc('#$(%"H0c!c-(c#&"#c$%1c")*c"0c!c+#,)(-c,)$&0c$c2$# c0c$%c
-(c"#
,%$)c"$"c,)$&".c!c$## c0c%c$(%c(c"#+%&c$"c$c$## cc%c$#!*c
('#$(%"0c$)"(c"#+"c$"c!cJ**)$(#Kc,(#c$c%#c(,c(()$%c('#$(%".c
c
!c "c c $%c c ")*c (%c (,c !c ,(#c #&"#c $%1"c "!(-%c %c <&#c A.c c %#c (,c
%"#*(%"c#,#c(c!"cc)(*$(%"c$"cc!#(&!c.c!c"$"c(,c!c c$%c c"c
$c 7*(%c c #%"c -!*!c (,c !c ,(#c $%1"c "c ")*.c !c 2$# c c #,)*"c !c
%#c(,c"c%c!c**)$(#=c2Lc ,c!c**)$(#c *(%$%"c$%c(c %#c (,c"0c$%c
2Lc ,c !c **)$(#c *(%$%"c $%c +%c %#c (,c ".c !"0c !c %#c (,c "c %c !c
**)$(#c')"c2c"c$)-$ "c+%.c-(c"c%c!c2 /c$#c%*(c$%c*$%cc"c$"c
&%#$)c'#'("c"$"c,)$&".ccccccccccccccccccccccccccccccccccccccccccccccc
c
c
c
?
The Accumulator
!c**)$(#0c$"c"c%$c"&&""0c"c"c$"c$c&%#$)c#&"#c(c$**)$c!c#")"c(,c
$c )$#&c %#c (,c %"#*(%".c c *$%c !()c $%c A
c G
Hc +$)c $%c "c !c ("c +#"$)c
#&"#c
!
c
p?pc
Y
a
Rc cccc c
cc
ccc
c
5cc
c
!"" #c
R c
c
c
R'$%&c$c"?%*c(,c%"#*(%"c$c*#$%%#c(,c"c"c*$))c$c)(('.!c)(('cc
$*(%c"c'#,(#c c!c%"#*(%c
c
Rc DJNZreg,label
%c!"c%"#*(%0c!c#&"#c"c*#%5,cc"c%(c3#(0cc4'"c(c!c$#&c$#""c
#,##c(c c!c)$).2#(#c(c!c"$#c(,c!c)(('c!c#&"#c"c)($c-!cc!cc*(%#cc
,(#c!c%#c(,c#'(%".c
c
|NCONDITIONALJ|MPINSTR|CTIONS:
c
))c*(%(%$)c4'"c$#c"!(#c4'"0$%%&c!$c!c$#""c(,c!c$#&c"cc-!%c
Ac$%cNc "c(,c!c*(%%"c(,c!c'#(&#$c*(%#(2H.c
%*(%(%$)c4'c%"#*(%"c$#=c
R c LJMP (Long jump) 3 byte instruction
R c SJMP (Short jump) 2 byte instruction
CALL INSTR|CTIONS=c
c
c%"#*(%c"c"c(c*$))c$c"#(%c
Rc LCALL(long call) 3 byte instructionc
Rc ACALL(absolutecall)2byteinstruction
c
/!%c$c"#(%c"c*$))0c*(%#()c"c#$%",##c(c!$c"#(%c.,#c,%"!%&c7*(%c
(,c!c"#(%0!c%"#*(%cR(##%Hc#$%",#"c*(%#()c$*1c(c!c*$))#.c
c
c
c
c
c
ADDRESSING MODES:
%c@$#""%&c(@c#,#"c(c!(-c (c$#c$#""%&c$c&+%c(# c)(*$(%c.!c
$#""%&cc("c$#c$"c,())(-"0c
/!c$%c7$')c(,c$*!=c
Immediate Addressing MOV A, #20h
Direct Addressing MOV A, #30h
Indirect Addressing MOV A, @R0
External Direct MOVX A, @DPTR
Code Indirect MOVC A, @A+DPTR
$*!c(,c!"c$#""%&c("c'#(+"c'(#$%c,)7) c
c
c
INDIRECT ADDRESSING:
c
%#*c $#""%&c "c $c +# c '(-#,)c $#""%&c (c -!*!c %c $% c *$""c '#(+"c $%c
7*'(%$)c)+)c(,c,)7) .c
MOV A,@R0
!"c %"#*(%c *$""c !c ACc (c $%$) 3c !c +$)c (,c !Rc #&"#.c !c ACc -))c !%c
)($c!c$**)$(#c-!c!c+$)c,#(c%#%$)cRc-!*!c"c,(%c$c!c$#""c%*$c
cccR.c
%#*c$#""%&c$)-$ "c#,#"c(c%#%$)c
R5cc%+#c#,#"c(c$%c <R.
EXTERNAL DIRECT ADDRESSING
c
7#%$)c(# c"c$**""c"%&c@7#%$)c#*@c$#""%&c.!#c$#c(%) c-(c*($%"c
!$c"c7#%$)c#*c$#""%&c(=c
MOVX A,@DPTR
MOVX @DPTR,A
"c (c*$%c"0c(!c*($%"c)3c2R.c
%c!"c%"#*(%"0c2Rc"c,#"cc)($c-!c!c$#""c(,c7#%$)c(# c!$c (c
-"!c (c #$c (#c -#.c %*c 2Rc!()"c !c *(##*c 7#%$)c (# c $#""0c !c ,#"c
*($%c-))c(+c!c*(%%"c(,c!$c7#%$)c(# c$#""c%(c!c**)$(#.c
!c"*(%c*($%c-))c(c!c(''("=cc-))c$))(-c
(c(c-#c!c+$)c(,c!c**)$(#c(c!c
7#%$)c(# c$#""c'(%c(c c2R.c
c
EXTERNAL INDIRECT ADDRESSING:
7#%$)c (# c *$%c $)"(c c $**""c "%&c $c ,(#c (,c %#*c $#""%&c .!"c ,(#c (,c
$#""%&c "c "$)) c (%) c "c %c #)$+) c "$))c '#(4*"c !$c !$+c +# c "$))c $(%c (,c
7#%$)cR.c%c7$')c(,c!"c$#""%&c(c"=c
MOVX @R0,A
%*c $&$%0c !c +$)c (,Rc "c ,#"c #$c $%c !c +$)(,c !c **)$(#c "c -#%c (c !$c
$#""%&c 7#%$)c R.c %*c !c +$)c (,IRc *$%c (%) c c !c !#(&!c <<!c !c '#(4*c
-()c,,*+) cc)c(cCFc "c(,c7#%$)cR.c
c
c
c
c
(cCcc
(#&cc
c(+c'0Occ
$*$))c)$ c
(+c'0Occ
$*$))c)$ c
!#=c"4'c!#c
)$ =c
(+c#0OCc
)=cc(+c#0OCCc
)=c(+c#0OCCc
)=c4%3c#0)c
4%3c#0)c
4%3c#0)c
#cc
%c
c
c
c
c *AP to select the 3 bank
cccccccc
Pc(cCcc
#&cc
c#"c
c#"cc
(+c#0O
%c
c
c
c
j Segment Displayc
cc
INTROD|CTIONc
cc
<(#c !c "+%c "&%c "')$ c (c *$%c "c !c
CDc (#cc CF
c *!'.c $*!c (,c !c
"&%"c(,c!c"')$ c"c*(%%*c(c$c'%c(%c!cACcG!c"*!$*c"!(-"c!(-c(c(c!"H.c
%c (##c (c )&!c 'c $c "&%c (%c !c !c '%c "c c "c (c .c (c #%c $c "&%c (,,c !c
*(##"'(%%&c'%c"cc"c(cC.c!"c"c"') c(%c c"%&c!c'%"c(%c!cACc(cQQc
(#cQQ.c
cc
cc
c"')$ "c$#c
Rc c2(-#
!%&# cG$c'#cHc
Rc c2%
!%&# cGAc'%"c'#c
"&c"')$ Hc
cc
cc! c$#c*!$'#c!$%cc"')$ c
cc c
cc
cc
cc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccc
CREATING DIGIT PATTERNc
R<A!c.c
ACc &c &.c!c &.c&c &.c,c &.cc &.cc &.c*c &.cc &.c$c :c
&%c
'%c 0c c c c c c c c c c
%#c
%#c 1c c c c c c c c c Fc
$c 2.c 2c c c c c c c c c Dc
c 2.c 3c c c c c c c c c c
*c 2.c 4c c c c c c c c c BBc
c 2.c
c 2.Dc cc
,c 2.Cc
&c '.Fc cc
!G'Hc 2.c
cc
(c*$%c$)"(c(c!"c,(#c"(c*!$#$*#"c)1cc0c..cc%(c,(#cc(#cc*$"cc-))cc"$c$"c
!$c(,ccc8cAc.c (cc!"c"c(%c(,c)$(%c(,c
"&c"')$ .c
%*c-c*$%c%$)c(%) c(%c
"&c"')$ c$c$cc0-c%c(c"*$%c!"c"')$ c$c,$"c#$c
.!c"*$%%%&c,#?%* c"!()cc!&!c%(&!c (cc,)*1#
,#.cc)$"cSc.!#,(#ccTc
c(%c&c"cc"c c"*(%"cc
cc
INTERFACINGc
(c !$c c $c "%&c ((%c %(c "')$ .c "(c !c *((%c %(c '%c "c c (c C+c .!c
*$!(c'%"c$#c*(%%*c(c'(#cc!#(&!cc!c#""$%*cG*##%c)%&H.c
c
ccccccccccccccCommon Anode displayc
c
cc
CODE EXAMPLE:
Pc(cCc
cccc#&cc
cccc!#=(+c'0O(*(!c
$*$))c)$ c
(+c'0O,B!cc
$*$))c)$ cc
(+c'0O$D!c
$*$))c)$ c
(+c'0O!c
$*$))c)$ c
(+'0OBB!c
$*$))c)$ c
(+c'0OB!c
$*$))c)$ cc
(+c'0OA!c
$*$))c)$ c
(+c'0O,A!c
$*$))c)$ c
(+c'0OA!c
$*$)c)$ c
(+c'0OB!c
$*$))c)$ c
c
)$ =c
(+c#0OCc
)=cc(+c#0OCCc
)=c(+c#0OCCc
)=c4%3c#0)c
4%3c#0)c
4%3c#0)c
#c
%c
c
c
TIMER/CO|NTER:
!c ACc *("c ?''c -!c -(c #"0c (!c (,c -!*!c $ c c *(%#())0c "0c #$0c $%c
*(%,&#c%+$)) .c!cACc#"c!$+c!#c&%#$)c,%*(%"=cHcE'%&cc$% (#c
*$)*)$%&c !c $(%c (,c c -%c +%"0c Hc (%%&c !c +%"c !")+"0c (#c Hc
%#$%&c$c#$"c,(#c!c"#$)c'(#.c
c
|SING TIMERS TO MEAS|RE TIMEc
+(") 0c (%c (,c !c '#$# c ""c (,c #"c "c (c $"#c .c /c -))c "*""c !"c "c (,c
#"c ,#"c $%c -))c ""?%) c "*""c !c "c (,c #"c (c *(%c +%".c /!%c $c #c "c
"c(c$"#ccc"c$)"(c*$))c$%c@%#+$)c#@c"%*cc"c$"#%&c!cc(,c!c
%#+$)c-%c-(c+%".c
<#"0c "c -(#!c %(%%&c !$c -!%c $c #c "c %c %#+$)c #c (c G$"c (''("c (c +%c
*(%#c(Hc$%c*(##*) c*(%,�cc-))c%*#%c cc+# c$*!%c* *).c"c (c-))c
#*$))c ,#(c !c '#+("c *!$'#0c $c "%&)c $*!%c * *)c *(%"""c (,c c *# "$)c ')"".c !"c $c
#%%%&c#c-))cc%*#%=c
0CB0c ccLcB0CAc
B0CAc"c'#c"*(%.c %)1c%"#*(%"
"(c(,c-!*!c#?#cc$*!%c* *)0c(!#"c
0c$%c(!#"cD
C0c cB0CAcLc.CDc
.CDc"*(%"c!$+c'$"".c%c')$%c%&)"!0c$(c!$),c(,c$c%!c(,c$c"*(%0c(#c(%
-%!c
(,c $c "*(%.+(") c "c %(c +# c ",)c (c 1%(-c .CDc "*(%"c !$+c '$"".c ,c (c -$%c (c
7*c $%c +%c (%*c '#c "*(%c (c !$+c (c -$c ,(#c !c #c (c *(%c ,#(c c (c C0c
A.DCc".c(-c*$%c (c-$c@!$),c(,c$c6@c(c*$%M.c (c-c*(c(c$%(!#c'(#$%c
*$)*)$(%.c
.CcUcB0CAcLcDF0B.C.c
!"c ))"c "c !$c c -))c $1c .Cc "*(%"c G !c (,c $c "*(%Hc (c *(%c ,#(c c (c DF0B.c
*$)) 0c c -))c $1c c .DBBBBAc "*(%"
!(-+#0c
!$M"c*)("c%(&!c,(#c&(+#%%c-(#1.c(%"#c!$c,c (c-#c)%&c$c-$*!c$"c(%c
!cACc$%c$c!c$(+c$""'(%c (#c-$*!c-()c(%) c&$%c$(c(%c"*(%c+# c
c (%!".c &$%0c c !%1c !$M"c $**#$c %(&!c ,(#c ("c $'')*$(%"
!"0c -c %(-c !$+c $c " "c -!c -!*!c (c $"#c .c ))c -c %c (c #+-c "c !(-c (c
*(%#()c!c#"c$%c%$)3c!c(c'#(+c"c-!c!c%,(#$(%c-c%.c
Timer SFRsc
"c%(%c,(#0c!cACc!$"c-(c#"c-!*!c$*!c,%*(%c""%$)) c!c"$c-$ .c
%c #c "c c $%c !c (!#c "c .c !c -(c #"c "!$#c -(c <"c Gc $%c
Hc -!*!c *(%#()c !c #"0c $%c $*!c #c $)"(c !$"c -(c <"c *$c "()) c (c "),c
G c$%c H.c
c0OC!c
cA!0OC!c
(-0c$*1c(c!c#".c<#"0c)"c$)1c$(c#c.c
cUcCFcNccLcc
cUcCFcNccLcc
%*c !#c $#c (%) c -(c "c +(c (c !c +$)c (,c $*!c #c c "c $''$#%c !$c !c
$7c +$)c $c #c $ c !$+c "c FC0CC.c ,c $c #c *(%$%"c !c +$)c FC0CCc $%c "c
""?%) c%*#%0cc-))c#"
(#coverflow
$*1c(c.c
"c c ,#"c $)1c $(c (#c ,#"c *(%#()c <=c c G#c (H.c !c c <c "c "c (c
*(%#()c !c (c (,c ('#$(%c (,c (!c #".c $*!c c (,c !c <c &+"c !c *#(*(%#())#c
"'*,*c%,(#$(%c*(%*#%%&c!(-c(c#%c$c#.c!c!&!c,(#c"cG"cDc!#(&!cHc#)$c
(c#cc-!#$"c!c)(-c,(#c"cG"cc!#(&!cHc'#,(#c!c7$*c"$c,%*(%"0cc
,(#c#c.c
!c%+$)c"c(,cc!$+c!c,())(-%&c,%*(%"=c
c
c
c
c
c
c
cGAB!Hc <c
c
Bitc Namec Explanation of Functionc Timerc
/!%c !"c c "c "c !c #c -))c (%) c #%c -!%c c
c c G2.Hc "c !&!.c /!%c !"c c "c *)$#c !c #c -))c #%c c
#&$#)""c(,c!c"$c(,c.c
/!%c !"c c "c "c !c #c -))c *(%c +%"c (%c c
Fc c G2.CH.c/!%c!"cc"c*)$#c!c#c-))cc%*#%c c
+# c$*!%c* *).c
Cc c #c(ccG"c)(-Hc c
Dc c #c(ccG"c)(-Hc c
/!%c !"c c "c "c !c #c -))c (%) c #%c -!%c c
c c G2.Hc "c !&!.c /!%c !"c c "c *)$#c !c #c -))c #%c c
#&$#)""c(,c!c"$c(,c.c
/!%c !"c c "c "c !c #c -))c *(%c +%"c (%c c
c c G2.DH.c/!%c!"cc"c*)$#c!c#c-))cc%*#%c c
+# c$*!%c* *).c
c c #c(ccG"c)(-Hc c
c c #c(ccG"c)(-Hc c
c
"c (c*$%c"c%c!c$(+c*!$#0c,(#c"cG-(c,(#c$*!c#Hc$#c"c(c"'*, c$c(c(,c
('#$(%.c!c("c(,c('#$(%c$#=c
c
TxM1c TxM0c #c(c "*#'(%c(,c(c
c c c
c#.c
c c c F
c#c
c c c A
c$(
#)($c
c c c ')c#c(c
#c(c@@c"c$c
c#.c!"c"c$c#)*c!$c-$"c1'c$#(%c%c!cACc(c$%$%c
*('$$) c-!c"c'#*"(#0c!cADA.c%#$)) c!c
c#c(c"c%(c"c%c%-c
+)('%.c
/!%c!c#c"c%c
c(0c7c-))c*(%c,#(cc(c.c/!%c7c"c%*#%c,#(c
0cc-))c@#"@c(cc$%c%*#%c7.c!"0c,,*+) 0c(%) cc"c(,c!c-(c#c "c
$#c%&c"=c"c
Dc(,c7c$%c"c
c(,c7.c!"c$)"(c$%"0c%c""%*0c!c#c*$%c
(%) c *(%$%c ABc +$)".c ,c (c "c $c
c #c (c 0c c -))c (+#,)(-c $*1c (c 3#(c ABc
$*!%c* *)"c)$#.c
&$%0c !#c "c +# c ))c #$"(%c (c "c !"c (c $%c c "c (%) c %(%c "(c (c -(%c c
"#'#"c,c (c+#c%c'c$%$) 3%&c$#*!$*c*(c-!*!c!$"c%c'$""c(-%c!#(&!c!c
&%#$(%"cG$c&%#$(%c%c$c'#(&#$%&c"!('c"c(,%c(%c!c(##c(,c$(cc(#cDc(%!"H.c
#c(c@@c"c$cF
c#.c!"c"c$c+# c*((%) c"c(.cc,%*(%"c4"c)1c
c(c7*'c!$c$))cFc"c$#c".c
7c"c%*#%c,#(cc(cCC.c/!%c7c"c%*#%c,#(cCC0cc#""c(cc$%c*$""c
7c(cc%*#%c c.c %*c!"c"c$c,))cF
c#0c!c#c$ c*(%$%c'c(cFCCFc
"%*c +$)".c ,c (c "c $c F
c #c (c 0c c -))c (+#,)(-c $*1c (c c $,#c FC0CFc $*!%c
* *)".c
#c(c@@c"c$%cA
c$(
#)($c(.c/!$c"c!$0c (c$ c$"16c ').c/!%c$c#c
"c%c(c0c7c!()"c!c@#)($c+$)@c$%c7c"c!c#c"),.c!"0c7c"$#"c*(%%&c
'.c/!%c7c#$*!"cCCc$%c"c""?%) c%*#%0c%"$c(,c#"%&c(ccG$"c%c!c
*$"c(,c("cc$%cH0cc-))cc#"c(c!c+$)c"(#c%c7.c
<(#c7$')0c)"c"$ cc!()"c!c+$)c<!c$%cc!()"c!c+$)c<!.c,c-c-#c(c-$*!c
!c+$)"c(,cc$%cc,(#c$c,-c$*!%c* *)"c!"c"c-!$c-c"=c
"c (c *$%c "0c !c +$)c (,c c %+#c *!$%&.c %c ,$*0c -!%c (c "c (c c (c $)("c
$)-$ "c"c7c(c$c1%(-%c+$)c$%c7c"c!c <c!$c"c*(%"$%) c%*#%.c
!c
*#(*(%#())#c!$#-$#c-))c(cc$))c,(#c (.c
!c$(
#)($c(c"c+# c*((%) c"c,(#c"$)"!%&c$c$c#$c-!*!c-c-))c$)1c(#c$(c
%c!c #$)c(%*$(%"c*!$'#.c
#c(c@@c"c$c"')
#c(.c/!%c#cc"c')$*c%c(c0cc""%$)) c*("c
-(c"'$#$cA
c#".c!$c"c(c"$ 0c#cc"cc$%c#cc"c.c(!c#"c*(%c
,#(cc(cCCc$%c(+#,)(-c$*1c(c.c))c!c"c!$c$#c#)$c(c#cc-))c%(-ccc(c
.c
/!)c#cc"c%c"')c(0c!c#$)c#ccG..cc$%cHc*$%cc'c%(c("c0cc(#c
c%(#$))
<%$)) 0c !#"c (%c (#c <c !$c *(%#()"c !c -(c #"c $%c '#(+"c +$)$)c %,(#$(%c
$(c!.c!cc <c!$"c!c,())(-%&c"#*#=c
! c !$+c (c (c -!c %##'"c $%c ! c -))c c
"*""c %c !c *!$'#c !$c $#"""c %##'". %*c !c <c "c
$#""$)0c (c *()c
4"c7*c!c*($%=c
Initializing a Timerc
c0O!c
cc
'(%c 7*%&c !"c -(c %"#*(%"c #c c -))c $) c &%c *(%%&0c %&c
%*#%c(%*c+# c$*!%c* *)cG+# cc*# "$)c')""H.c
!#c$#c-(c*((%c-$ "c(,c#$%&c!c+$)c(,c$cF
c#5c-!*!c (c"c'%"c(%c
(#c"'*,*c$'')*$(%.c(c$ c!#c#$c!c$*$)c+$)c(,c!c#c$"c$cF
c%#0c
(#c (c$ c"') c*c-!%c!c#c!$"c(+#,)(-.c
,c (#c#c"c%c$%cA
c(
!$c"0c!#cA
c(c)($c(c(#c%c"')c#c(
!%c#$%&c!c+$)c(,c!c#c"c"').c(c"') c#$c!c
c+$)c(,c!c#c$%c
(c#c(%.c
,%c c "c %*""$# c (c 4"c 1%(-c !$c !c #c !$"c #"c (c .c !$c "c (c "$ 0c (c $#c %(c
'$#*)$#) c%#"c%c!c+$)c(,c!c#cc#$!#c (c$#c%#"c%c1%(-%&c-!%c!c
#c!$"c(+#,)(-c$*1c(c.c
/!%+#c$c#coverflowsc,#(c"c!&!"c+$)c$*1c(c0c!c*#(*(%#())#c$($*$)) c
""c!c<7cc%c!cc#&"#.c!"c"c",)c"%*c#$!#c!$%c*!*1%&c!c7$*c+$)c(,c
!c #c (c *$%c 4"c *!*1c ,c !c <7c c "c ".c ,c <c "c "c c $%"c !$c #c c !$"c
(+#,)(-5c,c<c"c"cc$%"c!$c#cc!$"c(+#,)(-.c
/c *$%c "c !"c $''#($*!c (c *$"c !c '#(&#$c (c 7*c $c ,7c )$ .c "c ())c #*$))0c -c
*$)*)$c$#)#c!$cc$1"c!cACc !c(,c$c"*(%c(c*(%c,#(cc(cDF0B.c(-+#0c
!c<7c,)$&c"c"c-!%c!c#c(+#,)(-"c$*1c(c.c!"0c,c-c-$%c(c"c!c<7c,)$&c(c
%*$c -!%c !c (,c $c "*(%c !$"c '$""c -c "c "c !c #c %$)) c (c FCCFc )""c
DFB0c(#cB0DC.c,c-c"c!c#c(cB0DC0c !c(,c$c"*(%c)$#c!c#c-))c(+#,)(-.c
!"c-c*(c'c-!c!c,())(-%&c*(c(c7*c$c'$"c(,c !c(,c$c"*(%=c
$7c*(%c(,c$cFcc#&"#c"cWFcc<<<<c!$%c-!%c*(%c%*#$""c c(%c!$%c<<<<c
<c8c<c"c$#c"5"(c$c$7cc*$%c*(%c(c
cFCCC.Gcc!3cc*# "$)Hc!#,(#c(c
&+c$c"'*,*c)$ c"''("c(,ccc*#(c"*(%c-c"c,())(-%&c!(ccccccccccccccccccccccccccccccccc
FCCC
cLcDCCCccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cDAc,(#cc8cc#"'*+) cc(c(+#,)(-c-c%c$%c7#$c*(%cccccccccccccccccccccccccccc
DCCCcNcLcDCCFccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cDCcc,(#cc8cc#"'*+) .c
c example
)$ =cccccccc0cOcD!cc
c0cOC!c
cc0Oc
cc
)=4%c<c)c
#c
c
STEPPER MOTORc
,c$))c((#"0c"'c((#c"c!c$""c(c*(%#().cQ"c!$%)%&c"')* c"c#$)) c!$#c(c% c
c
$))c!#c"c(c(c"c(c#%&c!c"?%*c(,c#*$%&)c')""c(c(%c%'c(,c"'c*(%#())#c
$%c #*(%c %,(#$(%c (c $%(!#c %'.c #*(%c %,(#$(%c "c +# c "')c $%c *("c
(-%c(c@),@c,(#c)(&*$)c(%c(%c!$c'%c$%c@#&!@c,(#c)(&*$)c3#(.c((#c*(%#()cc"c$)"(c+# c
"')c
c+# c')"c$1"c!c((#c('#$%&c,(#c(%c"'c$%c,c!#c"c%(c')"c!c
((#c-(%Qc"$#.c2$"c-%c')""c*$%cc"!(##c(#c)(%&#c$%cc,%"c#+()(%c
#$.c !"c #$c *$%%(c c %,%c *$"c !c ((#c -(%Qc c $)c (c @*$*!c '@c -!c $))c !c
')""c G(*%$(%c (%c "'*,*c ((#c "!()c *(%$%c "*!c %,(#$(%H.c !c '*#c
)(-c#'#"%"c!c"*!c,(#c*(%%*%&c!c"'c((#c(c*#(*(%#())#c$%c$''#('#$c
'#(&#$c*(c,())(-".c
!c 1 c (c #+%&c $c "''#c "c #$)3%&c !(-c !c ((#c "c *(%"#*.c c $&#$c "!(-"c !c
#'#"%$(%c(,c$cDc*()c((#0c"(c%$c*$"cDc*()"c$#c"c(c*$"c!c#+()(%c(,c
!c#+c"!$,.c$*!c*()c"cc%#&3c%c!c*(##*c(##c,(#c!c((#c(c"'%.cc
cc
cc
Step anglec
Steps/secondc
!c#)$(%c-%c2c$%c"'"c'#c"*.c"c&+%c c0c
"'"c(#c')""c "*.cLG2c:c '"c #+()(%cHc Fc
2$"c -%c ')""c *$%c c "!(##c (#c )(%&#c $%c c ,%"c #+()(%c #$.c !"c #$c
*$%%(c c %,%c *$"c !c ((#c -(%Qc c $)c (c @*$*!c '@c -!c $))c !c ')""c
G(*%$(%c(%c"'*,*c((#c"!()c*(%$%c"*!c%,(#$(%H.c (c#,##%&c(c2c+$)c
%c$$"!c (c*$%c*$)*)$c"'" "*c$%c,#(cc)$ c(#c'$"c-%c')""c
cc
cc
INTERFACING TO 051.c
(c*$"c!c"''#c(c#($0c-c!$+c(c"%c$c')"c(c$*!c*()c%c#%.c!cACc("c%(c
!$+c",,*%c#+c*$'$) c(%c"c('c(c#+c$*!c*()0c"(c!#c$#c$c%#c(,c-$ "c(c
#+c $c "''#0 ''#c ((#"c $#c "$)) c *(%#())c c #$%""(#c (#c #+#c c )1c
.ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c#+%&c*##%c,(#c$*!c*()c"c!%c%c$(cFc$cNCc"'') .cc$#)%&(%c#$%""(#c
$##$ 0c
c "c"c(c%*#$"c#+%&c*$'$* c(,c!cCc*!'.cc<(#c D.1c#""(#"c!)'c
!cCc(c'#(+c(#c"(#*%&c*##%c,#(c!cNCc"'') .c
c
cc
c c c c c
c c c c c
c c c c c
c c c c Dc
cc
c
c
c cccccccccccc
Interruptsc
c
"c!c%$c')"0c$%cinterruptc"c"(c+%c-!*!c%##'"c%(#$)c'#(&#$c7*(%.c
"c "$c $#)#0c '#(&#$c ,)(-c "c $)-$ "c "?%$)0c %&c $)#c (%) c c !("c %"#*(%"c
-!*!c7'#"") c*$"c'#(&#$c,)(-c(c+$c%c"(c-$ .c(-+#0c%##'"c&+c"c$c
*!$%"c(c@'c(%c!()@c!c%(#$)c'#(&#$c,)(-0c7*c$c"#(%0c$%cc
&#$c %,,*%c "%*c -c c #%%&c '#*("c @%"#*(%c * *)"@c *!*1%&c ,(#c +%"c !$c
"$)) c (%c !$''%.c !%c #"c %(#$)c '#(&#$c ,)(-c $"c ,c -c !$c %+#c ),c .c !"c
"#(%0c *$))c $%c %##'c !$%)#0c "c (%) c 7*c -!%c $c *#$%c +%c G%##'Hc
(**#".c!c+%c$ cc(%c(,c!c#"c@(+#,)(-%&0@c#*+%&c$c*!$#$*#c+$c!c"#$)c
'(#0c#$%"%&c$c*!$#$*#c+$c!c"#$)c'(#0c(#c(%c(,c-(c@7#%$)c+%".@c!cACc$ c
c *(%,&#c "(c !$c -!%c $% c (,c !"c +%"c (**#c !c $%c '#(&#$c "c '(#$#) c
""'%c $%c *(%#()c '$""c (c $c "'*$)c "*(%c (,c *(c -!*!c '#"$) c -()c 7*c
"(c,%*(%c#)$c(c!c+%c!$c(**#.c%*c*(')0c*(%#()c-()cc##%c(c
!c(#&%$)c'#(&#$.c!c$%c'#(&#$c%+#c+%c1%(-"cc-$"c%##'.c
!c $) c (c %##'c %(#$)c '#(&#$c 7*(%c -!%c *#$%c +%"c (**#c $1"c c *!c
$"#c $%c *!c (#c ,,*%c (c !$%)c *#$%c *(%(%".c ,c c -#c %(c ,(#c %##'"c -c
-()c!$+c(c$%$)) c*!*1c%c(#c$%c'#(&#$c-!!#c!c#"c!$c(+#,)(-%0c-!!#c
-c!$c#*+c$%(!#c*!$#$*#c+$c!c"#$)c'(#0c(#c,c"(c7#%$)c+%c!$c(**#.c
""c$1%&c!c$%c'#(&#$c&) c$%c!$#c(c#$0c"*!c$c"$(%c-()c$1c(#c'#(c
/c*$%c*(%,&#c!cACc"(c!$c$% c(,c!c,())(-%&c+%"c-))c*$"c$%c%##'=c
Rc #cc+#,)(-.c
Rc #cc+#,)(-.c
Rc *'(% #$%"""(%c(,c #$)c!$#$*#.c
Rc 7#%$)c+%c.c
Rc 7#%$)c+%c.c
%c(!#c-(#"0c-c*$%c*(%,&#c!cACc"(c!$c-!%c#cc+#,)(-"c(#c-!%c$c*!$#$*#c
"c"% #*+0c!c$''#('#$c%##'c!$%)#c#(%"c$#c*$)).c
+(") c-c%c(cc$)c(c"%&"!c-%c+$#("c%##'"c$%c7*%&c,,#%c
*(c '%%&c (%c -!$c %##'c -$"c #&&#.c !"c "c $**(')"!c c 4'%&c (c $c ,7c
$#""c-!%c$c&+%c%##'c(**#".c
c*(%")%&c!c$(+c*!$#c-c"c!$c-!%+#c#cc(+#,)(-"cG..0c!c<cc"c"H0c
!c$%c'#(&#$c-))cc'(#$#) c""'%c$%c*(%#()c-))c4'c(c.cc"c$""c
!$c-c!$+c*(c$c$#""cc!$c!$%)"c!c"$(%c(,c#cc(+#,)(-%&.c
Setting |p Interruptsc
c,$)c$c'(-#'0c$))c%##'"c$#c"$).c!"c$%"c!$c+%c,0c,(#c7$')0c!c<c
c"c"0c!cACc-))c%(c7*c!c%##'.c(#c'#(&#$c"c"'*,*$)) c))c!cACc
!$cc-"!"c(c%$)c%##'"c$%c"'*,*$)) c-!*!c%##'"cc-"!"c(c%$).c
Polling Sequencec
!c ACc $($*$)) c +$)$"c -!!#c $%c %##'c "!()c (**#c $,#c +# c %"#*(%.c
/!%c*!*1%&c,(#c%##'c*(%(%"0cc*!*1"c!c%c!c,())(-%&c(##=c
Rc 7#%$)cc%##'c
Rc #cc%##'c
Rc 7#%$)cc%##'c
Rc #cc%##'c
Rc #$)c%##'c
!"c$%"c!$c,c$c #$)c%##'c(**#"c$c!c7$*c"$c%"$%c!$c$%c7#%$)cc%##'c
(**#"0c!c7#%$)cc%##'c-))cc7*c,#"c$%c!c #$)c%##'c-))cc7*c
(%*c!c7#%$)cc%##'c!$"c*(').c
Interrupt Prioritiesc
/!%c*(%"#%&c%##'c'#(#"0c!c,())(-%&c#)"c$'') =c
Rc (!%&c*$%c%##'c$c!&!
'#(# c%##'
%(c+%c$%(!#c!&!c'#(# c%##'.c
Rc c!&!
'#(# c%##'c$ c%##'c$c)(-
'#(# c%##'.c
Rc c)(-
'#(# c%##'c$ c(%) c(**#c,c%(c(!#c%##'c"c$)#$ c7*%&.c
Rc ,c-(c%##'"c(**#c$c!c"$c0c!c%##'c-!c!&!#c'#(# c-))c7*c
,#".c,c(!c%##'"c$#c(,c!c"$c'#(# c!c%##'c-!*!c"c"#+*c,#"c c
'())%&c"?%*c-))cc7*c,#".c
/!%c $%c %##'c "c #&�c !c ,())(-%&c $*(%"c $#c $1%c $($*$)) c c !c
*#(*(%#())#=c
Rc !c*##%c2#(&#$c(%#c"c"$+c(%c!c"$*10c)(-
c,#".c
Rc %##'"c(,c!c"$c$%c)(-#c'#(# c$#c)(*1.c
Rc %c!c*$"c(,c#c$%c7#%$)c%##'"0c!c*(##"'(%%&c%##'c,)$&c"c*)$#.c
Rc 2#(&#$c7*(%c#$%",#"c(c!c*(##"'(%%&c%##'c!$%)#c+*(#c$#"".c
Rc !c%##'c$%)#c(%c7*".c
$1c "'*$)c %(c (,c !c !#c "'=c ,c !c %##'c %&c !$%)c "c $c #c (#c 7#%$)c
%##'0c!c*#(*(%#())#c$($*$)) c*)$#"c!c%##'c,)$&c,(#c'$""%&c*(%#()c(c
(#c %##'c !$%)#c #(%.c !"c $%"c c "c %(c %*""$# c !$c (c *)$#c !c c %c (#c
*(.c
%c %##'c %"c -!%c (#c '#(&#$c 7*"c !c c G#%c ,#(c %##'Hc %"#*(%.c
/!%c!cc%"#*(%c"c7*c!c,())(-%&c$*(%"c$#c$1%c c!c*#(*(%#())#=c
Rc -(c "c $#c '(''c (,,c !c "$*1c %(c !c 2#(&#$c (%#c (c #"(#c %(#$)c
'#(&#$c7*(%.c
Rc %##'c"$"c"c#"(#c(c"c'#
%##'c"$".c
L C Dc
?c# "$)c"')$ c$)"(c*$))c$"cc"c+# c!)',)c%c'#(+%&c"#c%#,$*c$"c-))c$"c,(#c
&&%&c'#'(".c!c("c*((%c 'c(,cc*(%#())#c"ccDDAc-!*!c'#(+"c
$c "')c %#,$*c -%c !c *(%#())#c 8c$%c .c !"c Q"c $#c +# c"')c (c %#,$*c
-!c!c*(%#())#c$"c-))c$"c$#c*("c,,*+.c
c
7Fc%c)'!$%#*cc"')$ c
.c
cc
/!%cc"c)(-cGH0c!c$$c"c(cc#$c$"c$c*($%.c/!%c c"c!&!cGH0c!c$$c%&c
"%c"c*(%"#c$"c7c$$c-!*!c"!()cc"')$ c(%c!c"*#%.c
/!%cc"c)(-cGH0c!c%,(#$(%c(%c!c$$c"c"c%&c-#%c(c!c.c/!%c/c"c
!&!cGH0c!c'#(&#$c"c,,*+) c#$%&c,#(c!c.c("c(,c!c"c!#c"c%(c%c(c
#$c,#(c!cc"(c!"c)%c*$%c#*) cc*(%%*c(c%c!"c"$+%&c(%c*(%#())#c)%.c
!cV c'%c "c"c (c )$*!c !c $$c '#"%c (%c !c $$c '%".c c c
c /c "&%$)c "c
#?#c(c)$*!c!c$$.c!cc%#'#"c$%c7*"c(#c*($%c$c!c%"$%c!cc
)%c"c#(&!c)(-.c,c (c%+#c#%&cc)(-0c (#c%"#*(%c-))c%+#cc7*.c
c
ACc%#,$*%&c(cc
<(#c (%#$"c "%&c $c Ec '(c "!()c c "c $"c "!(-%c %c !c ,&#."')$ c $$c $c
GHc"(#"c!c"')$ c$$.c (c-!%c-c!$+c(c"')$ c$c*!$#$*#c(%cc-c$"*$)) c
Instructionc HEXc
<%*(%c"cGA
c%#,$*0cc)%"0cCUc27)"Hc Ac
<%*(%c"cGA
c%#,$*0cc)%0cCUc27)"Hc c
<%*(%c"cGD
c%#,$*0cc)%"0cCUc27)"Hc Ac
<%*(%c"cGD
c%#,$*0cc)%0cCUc27)"Hc c
"')$ c(,,c*#"(#c(%c c
(cG(+c*#"(#c(c(' ),c*!$#$*#c'("(%Hc c
(+c*#"(#c(%c*!$#$*#c),c c
(+c*#"(#c(%c*!$#$*#c#&!c Dc
#%c(%c+")c%#)%c*#"(#c c
#%c(%c+")c)%1%&
)(*1c*#"(#c <c
$1c*#"(#c%+")c c
ANc$#c
c*#"(#c'("(%c(c,#"c)%c
c
cccc!c
cccc)*X%$)3c
ccc)*X*)#c
ccc)*X*($%c
cccc)*X$$"')$ c
ccccccccc c)*X$$"')$ c
ccccccc c)*X$$"')$ c
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
cccc c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
c0OQQc
c)*X$$"')$ c
"('=$4'c"('cc
)*X*)#=c
c0O!c
c)*X*($%c
#c
)*X%$)3=c
c0OA!c
c)*X*($%c
c0OA!c
c)*X*($%c
c0OA!c
c)*X*($%c
#cc
)*X$$"')$ =c
cc
#cc
)*X*($%=c
cc
#cc
cc
Serial communication:
c
"c -c !$+c "'$#$c )%"c ,(#c #*+%&c $%c "%%&0c c "c '("")c (c #*+c $%c "%c $$c
G%,(.Hc $c !c "$c .c (c *$))c ,))
')7c (c )(*1c -!*!c %$)"c !"c -$ c (,c
*(%*$(%c "c *$))c $c "#$)c *(%*$(%c )(*1.c
%)1c !c '$#$)))c #$%"""(%0c $$c
(+"c!#cc c0c(#c%c$c"#"c(,c"c-!$c,%"c!c#c"#$)c*(%*$(%c*("c
,#(c.c,#c!c#*'(%c(,c$$c-c%c(c#$cc,#(c!c#*+%&c)(*$(%c$%c"(#cc%c
(# c$"c(''("c(c"%%&c-!#c!c'#(*""c"c#+#".c$$c&("c,#(c(# c!#(&!c
!c"c(c!c"%%&c)(*$(%0c$%c!%c(c!c#*+%&c%c$**(#%&c(c!c'#((*()c
c
c
!c,#"c!%&c-c"c(c-!%c"%&c!cAC"c%&#$c"#$)c'(#c"0c(+(") 0c*(%,&#c
.c!"c)"c"c))c!cACc!(-c$% c$$c"c-c-$%0c!c$c#$c-c-))cc"%&0c$%c
!(-c!c$c#$c-))cc#%.c
<#"0c )"c '#"%c !c @ #$)c (%#()@c G Hc <c $%c ,%c -!$c $*!c c (,c !c <c
#'#"%"=c
Bit
Bitc Namec Explanation of Functionc
Addressc
c c B<!c #$)c'(#c(ccc
Fc c B!c #$)c'(#c(cc.c
Cc c B!c )c'#(*""(#c(%*$(%"c%$)cG7')$%c)$#Hc
*+#c %$).c !"c c "c c "c %c (##c (c #*+c
Dc c B!c
*!$#$*#".c
c Ac B!c #$%"ccA.c!cB!cc(c#$%"c%c(cc$%c.c
c Ac B!c *+ccA.c!cB!cc#*+c%c(cc$%c.c
c c BB!c #$%"c<)$&.c c-!%c$c c!$"c%c*(')) c#$%".c
c c BA!c *+c<)$&.c c-!%c$c c!$"c%c*(')) c#*+.c
"cSM0c$%cSM1c)c "c "c !cserial odec(c $c +$)c -%c c $%c 0c %*)"+.c !c ,(#c
("c$#c,%c%c!c*!$#c$) c$(+.c"c (c*$%c"0c")*%&c!c #$)c(c
")*"c!c(c(,c('#$(%cGA
B
0c
c(#c !,c&"#Hc$%c$)"(c#%"c!(-c!c
$c#$c-))cc*$)*)$.c%c("cc$%cc!c$c#$c"c,7c$"c(%c!c ("*))$(#"c
,#?%* .c%c("cc$%cc!c$c#$c"c+$#$)c$"c(%c!(-c(,%c#cc(+#,)(-".c
/))c$)1c(#c$(c!c+$#("c #$)c("c%c$c(%.c
!c %7c 0cSM20c "c $c ,)$&c ,(#c @)'#(*""(#c *(%*$(%.@c %#$)) 0c -!%+#c $c c
!$"c%c#*+c!cACc-))c"c!c@@cG*+c%##'Hc,)$&.c!"c)"c!c'#(&#$c1%(-c
!$c$c c!$"c%c#*+c$%c!$cc%"c(cc'#(*"".c(-+#0c-!%c c"c"c!c
@@c,)$&c-))c(%) cc#&&#c,c!cB!cc#*+c-$"c$c@@.c!$c"c(c"$ 0c,c c"c"c$%c$c
c"c#*+c-!("cB!cc"c*)$#0c!cc,)$&c-))c%+#cc".c!"c*$%cc",)c%c*#$%c
$+$%*c"#$)c$'')*$(%".c<(#c%(-cc"c"$,c(c"$ c!$c (c-))c$)("c$)-$ "c-$%c(c*)$#c
!"cc"(c!$c!c,)$&c"c"c'(%c#*'(%c(,canyc*!$#$*#.c
! c$#c%(c"c(c*(%,&#c!c"#$)c'(#.c
!cTBcc"c"c%c("cc$%c.c%c("cc$%c0c$c($)c(,c%%c$$c"c$#c#$%".c
!c,#"cAc$$c"c$#c!cAc"c(,c!c$%c+$)0c$%c!c%%!cc"c$1%c,#(cA.c,cAc"c
"c $%c $c +$)c "c -#%c (c !c "#$)c '(#0c !c $$c "c "c -))c c -#%c (c !c "#$)c )%c
,())(-c c$c@"@c%%!c.c,cAc"c*)$#c!c%%!cc-))cc@*)$#.@c
TIc$%"c @#$%"c %##'.@c /!%c $c '#(&#$c -#"c $c +$)c (c !c "#$)c '(#0c $c *#$%c
$(%c(,cc-))c'$""c,(#c!c%+$)c"c(,c!c c$#c@*)(*1c(@c!c"#$)c'(#.c
,c !c '#(&#$c -#c (c -#c $%(!#c c (c !c "#$)c '(#c ,(#c !c ,#"c c -$"c
*(')) c ('0c !c $$c %&c "%c -()c c &$#).c !"0c !c ACc )"c !c '#(&#$c
1%(-c !$c c !$"c @*)(*1c (@c !c )$"c c c "%&c !c c .c /!%c !c c c "c "0c !c
'#(&#$c$ c$""c!$c!c"#$)c'(#c"c@,#@c$%c#$ c(c"%c!c%7c .c
%*c !c #$)c 2(#c (c !$"c %c *(%,�c $"c 7')$%c $(+0c !c '#(&#$c "c
*(%,&#c!c"#$)c'(#"c$c#$.c!"c(%) c$'')"c(c #$)c2(#c("cc$%c.c!c$c
$c"c#%c$"c(%c!c("*))$(#"c,#?%* c-!%c%c(cc$%c.c%c(c0c!c
$c #$c "c $)-$ "c !c ("*))$(#c ,#?%* c +c c .c !"c $%"c ,c (#c *# "$)c "c
.CB!30c(cc$c#$c-))c$)-$ "ccB0CAc$.c%c(cc!c$c#$c"c$)-$ "c
!c("*))$(#c,#?%* c+c cFD0c"(c$c .CB!3c*# "$)c"'c-))c )c$c$c#$c(,c
0B.c
c c
,#%*"cc%c)(&#$'! c
c
c
c%1"c
---.-1'$.*(c
---.*'$%,(*!.*(c
---.)*#(%*",(# (.*(c
---.%* *)('$.*(c