micro lab5
TRANSCRIPT
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 1/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 1
MICROCONTROLADORES Laboratorio n°5
TEMA: MANEJO DE TABLAS EN MEMORIA FLASH
PROBLEMA 1.-
SE DESEA DESARROLAR UN PROGRAMA PARA OBTENERUNA CUENTA ASCENDENTE DE NUMEROS PARES DE 2 A 14 ($0E) Y QUE SEREPITA CICLICAMENTE .LA CUENTA QUE SE MUESTRA EN UN DISPLAY DE 7SEGMENTOS ,SE MODIFICA LUEGO DE PRESIONAR Y SOLTAR EL PULSADORP1. EXISTE OTRO PULSADOR, CONECTADO AL MICROCONTROLADOR (ALPRESIONARLO Y SOLTARLO) LO REINICA EN 2, EN CUALQUIER MOMENTO. NOEXIONES: DISPLAY CONENCTADO AL PUERTO B LOS PULSADORES P1 Y P2.
CÓDIGO DEL PROGRAMA
.include "C:\VMLAB\include\m8def.inc".CSEG.ORG $00RJMP INICIOINICIO:
LDI R16, $00OUT DDRC, R16LDI R16, $FFOUT DDRB, R16
RES:LDI ZL, LOW (TABLA*2)
LDI ZH, HIGH (TABLA*2)PULSAR:
RCALL RESETSBIS PINC, 1RJMP PULSAR
SOLTAR:SBIC PINC, 1RJMP SOLTAR
START:LPM R18, Z+
OUT PORTB, R18CPI R18, $00BREQ RESRJMP PULSAR
RESET:SBIC PINC, 2RJMP RESRET
; .ORG $100
TABLA: .DB $5B, $66, $7D, $7F, $77, $39, $79
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 2/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 2
Ejecutamos el programa y observamos que sí compila.
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 3/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 3
Corremos el programa para ver los registros
Corremos el programa (F6) para ver los resultados en los registros.
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 4/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 4
Ahora simulamos en PROTEUS el programa.
Cuenta ascendente de números pares del 2 al 14(0$E).
Aprieto el pulsador (PC1) y cuenta 2
Aprieto el pulsador (PC1) y cuenta 4
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 5/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 5
Aprieto el pulsador (PC1) y cuenta 6
Aprieto el pulsador (PC1) y cuenta 8
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 6/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 6
Aprieto el pulsador (PC1) y cuenta 10=A
Aprieto el pulsador (PC1) y cuenta 12=C
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 7/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 7
Aprieto el pulsador (PC1) y cuenta 14=E
Aprieto el pulsador (PC2) RESET y regresa al número que cuenta 2
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 8/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 8
PROBLEMA 2.- DESARROLLA UN PROGRAMA PARA EL MICROCONTROLADORATMEGA8 QUE PERMITA LEER 2 NUMEROS DE 3 BITS, AMPELANDO 3INTERRUPTORES .LUEGO, CON UN PULSADOR (AL PRESIONARLO Y SOLTARLO)PERMITA VER LA SUMA EN UN VISUALIZADOR DE 7 SEGMENTOS .LA SUMA SE
OBSERVA EN FORMATO HEXADECIMAL.INICIALMNENTE TODOS LOS INTERRUPTORES ESTAN ABIERTOS, EL PULSADORSIN PRESIONAR Y EL VISUALIZADOR APAGADO.CONEXIONES:
DISPLAY CONECTADO AL PUERTO BPULSADOR AL PUERTO PC2 NUMERO 1:PD2 PD1 PD0 (LSB) NUMERO 2:PD7 PD6 PD5 (LSB)
CÓDIGO DEL PROGRAMA.include "C:\VMLAB\include\m8def.inc"
.CSEG
.ORG $00
RJMP INICIO
INICIO:
LDI R16, $7F
OUT DDRB, R16
LDI R16, $00
OUT DDRD, R16
OUT DDRC, R16
OUT PORTB, R16
LDI R19, $00
PULSAR:
SBIS PINC, 2
RJMP PULSAR
SOLTAR:
SBIC PINC, 2
RJMP SOLTAR
STAR:
IN R17, PIND
ANDI R17, 0B00000111
IN R18, PIND
ANDI R18, 0B11100000
LSR R18
LSR R18
LSR R18
LSR R18
LSR R18
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 9/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 9
LDI ZL, LOW (TABLA*2)
LDI ZH, HIGH (TABLA*2)
ADD R17, R18
ADD ZL, R17ADD ZH, R19
LPM R20, Z
OUT PORTB, R20
RJMP PULSAR
TABLA: .DB $3F,$06,$5B,$4F,$66,$6D,$7D,$07,$7F,$6F,$77,$7C,$39,$5E,$79,$71
Ejecutamos el programa y observamos que sí compila.
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 10/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 10
Corremos el programa para ver los registros
Corremos el programa (F6) para ver los resultados en los registros.
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 11/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 11
Ahora simulamos en PROTEUS el programa.
Leer dos números de 3 bits, empleando interruptores. Luego con el pulsador (alpresionarlo y soltarlo) permita ver la suma en un visualizador de 7 segmentos.
Observamos que los números (2 y 1), son 0 y 0 (ver interruptores) entonces la suma
de estos números al pulsar será 0
Observamos que los números (2 y 1), son 3 y 2 (ver interruptores) entonces la sumade estos números al pulsar será 5
8/18/2019 Micro Lab5
http://slidepdf.com/reader/full/micro-lab5 12/12
UNIVERSIDAD NACIONAL DEL CALLAO / ESCUELA: ING. ELECTRÓNICA
PROF: ING .CUCHO MENDOZA, ZENÓN A. Página 12
Ahora vemos que algunos interruptores han sido cerrados, entonces los números(2 y 1), son 7 y 6, por lo tanto al pulsar la suma de estos dos números la será d=13
Ahora vemos que algunos interruptores han sido cerrados, entonces los números
(2 y 1), serán 7 y 7, por lo tanto al pulsar nos arrojara la suma que será serán E=14