Examen de lnformática

Anuncio
Peri odo
Enero 2010
UTU.ITS
4'año C.l.T
ElectrotecniaElectrónica
Examen de lnformática
Nombre:
Grupo:
Cedula de ldentidad N":
Tipo de examen: Libre tr Reglamentado tr
Problema
Nota:
l.
Se cuenta con un PIC16F690 funcionando a 4 MHz, con dos display de 7
segmentos, conectados a la puerta C, refrescándose los mismos 200 veces
por segundo; Se utilizará un multiplexado de 2.5 milisegundos para
desplegar los números de 0 a 9; (el retardo de 2.s mirisegundos será
calculado aplicando la técnica del TMRI ). Se pide escribir un programa para
el cual el contador empezará su cuenta ascendente desde 00 a ds en
decimal, llegado a éste número se pondrán a cero ros 2 display y se
reiniciará el programa, uno de los display representa las unidades y el otro
las decenas. Se brindará parte del programa principal, el cual se deberá
completarlo, validarlo y ajustarlo a la aplicación de programa solicitada.
\_")
Problema 2.
Se desea mostrar en un display de siete segmentos de cátodo común
conectado al puerto C de un microcontrolador P|C16F690 la palabra
"febrero", mostrando cada letra en secuencia (f)e)b)r)e)r)o)f...) a
razón de 1 letra por segundo, refrescando el display S0 veces por segundo.
Se pide escribir el programa para el P1C16F690, considerando el uso del
temporizador TMRI para realizar el retardo y la siguiente disposición de los
segmentos:
.
o
o
o
o
.
.
.
I
)
)
)
)
)
)
)
seg. E
RP1
seg. D
RP2
seg. C
RP3
seg. B
RP4
seg. A
RPS
seg. F
RP6
seg. G
RP7 enciende el display en "1".
RPO
Problema 3. (LIBRES)
Se dispone de un P|C16F690 funcionando a 4 MHz. se pide activar a
través de un pulsador en Ia puerta B, bit 5, un LED que permanecerá
encendido 4 segundos en el puerto B, bit 7. Además, deberá permanecer 1
segundo apagado después de cada encendido. La resolución del problema
deberá fundamentarse en el manejo de interrupciones, el temporizado se
deberá calcular utilizando el registro TMR1.
NOTAS:
'/
/
Para que se corrijan los problemas, deberán estar totalmente documentados y es parte de la
solución la realización del diagrama de flujo del programa.
En este examen se empleara el PIC 16F628A paraaquellos alumnos de años anteriores.
Página 1 de
f
C :
;M''Rl
PROGRFTMA
,
1
5F690 \CoNTADOR
0
0
66. ASM
(E,rERCrCro 1, E){A}..ÍEN E',EBRERO 2010) ETCHA:17/O2/2OLA
DE OO A 99 C¿DA UN SEGUNDO, USA}¡DO EL TTMPORIZ¿DOR
Y DESPI.EGÁNDOLO EN DOS DISPIAY DE ? SEGMENTOS DE CÁIOOO COI.¿T¡I.I
;pRoGRAr,fA CONTADOR OO
;ESIT
\USERS\NELSON\DOCUMENTS\PRoYEgTOS
{aesU
]NdETñN"A
U}iTA VARTABI,E
,'SEGUNDOS
,TGVISIÓN: 2.
PROGR,AMA PARA PIC1 6T690
RELO.T INSTRUCCIóN: lMHz
O
,I¡EI"OCIDID DEL RELOü: 4MlIz
; PERRO GUARDIÁTi¡
;STATUS
;PORTA
,.TRISA
,.PORTC
;TRISC
,ANSEL
;AIISELH
,.ADCON0
,ADCON1
,.CMICONo
:
,PCT
;Tt'fRlt
;II"íR1H
;PIR1
;
PIEl
UNIDAD
DECENA
CONTA
*DEFINE
*DEFI}fE
1mS
0x07
oxB7
0x118
0x11F
0x1F
0x9r'
0x119
0x11A
EQU
EQU
EQU
EQU
;CM2CON1
=
DE CóDIGO: APAGADA
0x03
oxo5
0x8s
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
;Ct'l2COt¡to
,T1CON
PROTECCIÓN
DESIIABITITADO
EOU
EQU
EOU
EQU
EQU
EQU
EQU
EQU
0x118
0x02
0x10
0x0E
0x0F
0x0c
0x8c
0x20
0x21
ox22
DISP-I.INIDAD PORTAI
S
DISP DECE}IA PORTC,T
(-rNrRc_osc_NoclJ(our
_"oitig
_fiDT_oFF & _PI{RTE_OEE e _r'fCLRE_OrE e _CP_O5'F &
&
BOR-OFT & _IESO-OFE & _ECMEN-OFF)
LIST
P=16F690
rNcf,uDE,P16r690.rNC'
RESET
INICIO
ORG
0x00
GOTO
INICIO
BSF
STATUS,RPO
l'¡OVLYI
B' 00000000
BUCT.E
II{DEC
TRISC
t'foww
B' 11011111,
lrÍOw{§
IRI§A
CtRF
ADCONl
,.RELO,J
BCF
STATUS,RPO
,BAIiICO DE REGISTRO 2
BSF
STATUS,RPl
Cf,RE
CLRP
BCE
CLRF
NiTSEL
,PIN RAs SATIDA
;TODOS
vD
ESTAT.IDAR
(Eoes/2)
LoS PINE§ DIGITALES
AI\¡SET"H
STATUS, RP1
;BANco DE REGISTRO
ADCONO
PÓRTA
PORTC
,coNvERsoR A/D DESACTMDO
,. INICI"AT,I ZAR PT.,ERTOS
UNIDAD
DECEIiIA
;0 ->
;0 ->
CALI,
INCF
DESPI,E
;},!oSfRAR EN PAI{TAILA
UNIDAD, F
D'10'
;UNIDAD+I
MO\ITW
ST,BWF
T'NIDAD,
BTESS
STATUS, Z
;Z=1?
GOTO
CHECK
;NO, REVISAR LÍMITE
CI,RF
UNIDAD
DECENA,E
;DECENA+1
CI.RF
CI,RF
CI,RF
INCP
CTIECI(
1
,TODo PUERTO C SALIDA
l'lovr{F
CLR.E.
NEliCONT
;BAlICo DE REGISSRO
,
il#4
UNIDAD
DECEIiIA
->
;10 -> IÍ
O
e{r
ST'BTIF
uNrD*D,0
UNIDAD
->
;1O-UNIDAD
W
(ITNIDAD=10)
;SI, 0 ->
,9->W
BTFSS
0
UNIDAD
->
;tNIDAD-9 ->
DECE}iIA
W
,z-1?
(UNIDAD=9)
VOLVER AI CICTO
GOTO
STATUS,
BUCLE
MOVLIí
D'1'
SUBYi:F
DECE}iIA,
BTTSS
sTArus, z
;Z=1?
GOTO
CALL
BUCI,E
DESPI,E
;NO,
;SI , LLEeA¡'{os AL LÍMIlt
GOTO
NEWCONT
,.EMPEZ¿R
Z
,NO,
;SIr 1 ->
O
;DECEIiIA-1
W
->
W
(DECEI{A=1}
VOLVER AL CICLO
DE
O
c : \USERS\NELSoN\DOCTJMENTS\PROYECTOS
MOVLW
I,{OV}IF
I,ooP_DESPLE I'fo118
CA],L
MOVWP
BSE
BCF
CATL
l,fgt/F
CAJ,L
r.rowlF
BSF
BCF
CALI,
DECESZ
@TO
REIIJRN
DESPLE
TABLA_DEC_7SEG
RET
51.{S
LOP ESP
IF
ADDfiF
REfLfl
RETLII
RETLW
REÍLI{
RETLÍi
RETTW
RETLW
RETLI{
REILI{
RETTW
RETLI{
BCF
BcF
lllO\¡LW
MOVI{F
t'o\ltl{
lrovlsF
BCF
BStr'
BTESS
G¡OTO
BCr
BCF
RETT.,RN
E}¡D
Dr100'
CONTA
INIDAD,o
;100 ->
,100 ->
1
68690 \CONTADOR
0
66.
A.SM
Yl
CONTADOR
(100X[5ms*21=1s)
;UNIDAD -> W
T}BIA-DEC-7SEG ;TJ[BI,A DE CONI/ERSIóN (OSC ->
PORTC
;C¿RGAR DISPLAY
DISP_TJNIDAD ;DISPI.AY DE UNIDAD ENCENDIDO
DISP_DECENA TDISPLAY DE DEqENA APAGADO
RET-5I.IS'
DECEl,itA,g
0
?
SEE{ENTOS)
,RETARDO DI,T{ACIóN=5Í¡S
;DECENA,
_>
W
TABLA"-DEC*?SEG ;TABIA DE CON\¡ERSIóN
PORTC
;CARGAR DISPLAY
DISP_DECENA ;DISPIAY DE UNIDAD APAGADO
DISP*T,NIDAD ;DISPI,AY DE DECENA ENCENDIDO
RET_s}IS
,RETARDO DURACIÓN=5mS
CONTA,E
;CONTA*1 -> CONTA, CONTA=o? (100 REPETICIONES)
IOOP_DESPI.E ;NOr REPETTR
;ST, VOLVER AT PRINCIPIO
PcL,f
;W+PCL
8'00111111 '
;¡e0
B' 00001100 '
B' 0101101f
B' 01011110 '
B'OX1OX100'
8'01110110 I
B'01110111'
8'00011100'
B' 01111111 '
B'01111L10'
B' 00000000 '
->
PCL
;f{=1
iÍÉ2
;le3
;I¡=4
;TÉ5
;IÉ5
;W7
;IEe
;¡É9
;Iiu10
1:1 (Ftm¡1-Fosc/4lil.,lHzl)
T1CON,4
,'PRE-ESCAIADOR DE REI.O,J
T1CON,s
HrECr
;CARGAR TEMPORf ZADOR PARA 5ms=5000us
I!ÍR1H
;tIA)< 1!lR0=65535/Et¡81=0
.0
' -> II'íRIH, H' 78 '
;BA¡IAR BAI¡DERA DE Tl,lR1
->
PIR1,
iH I EC
O
T1CON,o
PIR1,O
LOP ESP
T1CON,o
PIR1,
65536s=65536uS
;65536-5000=50536, D' 60536' *> H'EC78'
H, 78 t
III{R1L
O
IF
;ACTMR
;SI,BIó
TEMPORIZADOR
BAIiIDERA DE T!!R1?
IT\áR1I
(lEMPoRIzAcIóN Co,IPI,ETA)
;NO, COI(I.INIIAR
;SI,
DETENER
,BA¡,AR BA}{DERA DE IMR1
,.VOLVER
AL
SUBPROGRJAI{A ANTERIOR
F
I
a-
I
\Users\ne1son\Documents\exauen. asn
C:
LTST
F16[.690
INCLT]DE
, P16F690.
CONTADOR
EQU
EQU
oxo21
oxo22
#DEFf}IE
DT§P-ON
PORTC, T
DIGITC)
INICIO
ORG
0x0000
G¡OTO
INICIO
rNc"
ORtr
0x0004
BSr.
STATUS,RPO
CT.RI'
lRISC
BCF
BSF
SILTUS,RPo
STATUS,RPl
CI.RF
CI,RF
A}{SELH
BCr
A}¡SEL
-
CI,RE
STLTUS,RPl
CONTADOR
CI,R}T
BCE
T1CON, T1CKPSl
BCI.
T1@N,Tle(Pso
NUE1IO
CT,RF
DIGTTO
SIq'TENTE
CALL
REI}RDO
I}¡CE
DIGITO,tr
IIP\TF
DIGITO,W
I
-, I
XORLW
,7
BTFSS
STAÍUS,
@TO
SIq'IENlT
@TC¡
NUEVO
Z
REIARDO
l.ro\rLtf
.50
I¿ZO
}PVIIF
t'p\tF
CENI¡DOR
DTGITO,W
T]ABIA
PORIC
CAI,L
tPwlE
BSt
EAI.L
BCE'
DISP-ON
EMPO
DISP-ON
c¿tL
IEMPO
DECFSZ
CONTADOR
@TO
I.AZO
RETT'RN
ADDIIF
RETLI|
RETLúI
B' 011L0011
RETI.¡I
B'01100111' b
Br01000001' ¡
RETLW
RETLIT
RETLII
RETLII
REI['RN
ü
*""
MC\tLIf
!&rr¡fF
IOVLfl
BA}¡DERA
PCL, F
B'O111oOO1' F
'.
B'01110011' t
B' 01000001, r
Br 01000111' r"
0>o8
EA,1S
0xr0
TOVWE
n{RlL
BCP
PIR1 , XtrlRlIE'
BSI.
BTESS
T1CON, lttRlON
PIR1;11(R1rF
GOTO
BAI{DERiL
BCE
BCF
RE[{JRH
PrR1,I}!R1Ir
ORG
0x2007
DLT]]A
0x30D4
EttD
E
?ICON,I!,R1ON
F
¡
t
Ir
C : \Ugers\nelgon\Doer¡¡nentg\examen.
asn
I
LIST
F15F690
INCLI'DE
, P16F690. rNC',
EQU
EQU
0x021
C§NT¡DOR
*DEI'INE
DISP_ON
PORTC, T
ORG
0x0000
@TO
INICIO
DIGITO
INICIO
axo22
ORG
0x0004
BSF
CLRF
BCF
STATUS,RPO
ÍRTSC
STATUS,RPo
Bf9F
STATUS,RPl
ANSEL
ANSELH
NT'E\}O
CI.RF
CLRF
BCF
CI.RF
CLR}f
BCF
BCF
CI.RF
SIq'IEN?E
CAI¿
RETARDO
INCF
DIGITO,F
!,0VF
DIGITO,TT
LJ''
RETARDO
STATUS,RPl
CONTADOR
T1CON,T1CKPS1
T1CON,T1CKPSo
DICITO
XORLII
.7
Btrss
sTAlus,z
GOTO
GOTO
NI'EVO
SIGT'IENS
I.ÍO\ILW
.50
MOVWF
CONTADOR
l,!O\rf
CALL
DIGITO,¡f
TABI.A
!4ovlfr.
PORTC
BSF
DISP_ON
cAI,¿
IEMPO
BCE'
DISP_ON
CAI¿
rEMPO
DECFSZ
CONTADOR
@to
I.AZO
REN'RN
ADDIIF
PCL,F
RETLIT
B'01000001'
RETLIÍ
RETLI{
RETLI{
B'
B'
B'
B'
B'
B'
RETLTT
REÍLIT
REILTI
REfl,RN
B¡}iDERA
I
OOO00100
'
01000011
01100101
'
'
01111101'
01000001'
01001111'
l'fo\rl.ÍÍ
01(D8
I'to\rIlF
11r{R1H
l¡rc,Vl.ll
oxF0
!¡0\¡IiF
I'¡dR1L
BCE'
PIRI,ftRlrr
BSF
BTFSS
PIRI.,I5,RLIF
@TO
BAilDERJA
BCF
BCF
REM'RN
T1CON,II{RION
ORG
0x2007
DATA
0x30D4
E}TD
T1CON,TMRION
PIR1 , nrR1IF
bwv
5o ul)h/ *Wota
Ao6orOao
u"4t /no
9 \Jr-¡ nryO
v\_/
/
!
5c **l \
)o Mg
d
Áo¿",n|
J
sl5e6
+ [p--.-I
uWYq
j
et "6#
iJ
u-
Descargar