0% encontró este documento útil (0 votos)
64 vistas6 páginas

LABOMICRO2INFORME3

El informe detalla un laboratorio sobre el uso de interrupciones externas en el microcontrolador ATmega32, donde se implementan dos interrupciones para controlar un display de 7 segmentos y un juego de luces. Se presenta el código fuente utilizado y se concluye que el laboratorio permite verificar la aplicación práctica de las interrupciones. Además, se incluye una bibliografía para referencia adicional.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
64 vistas6 páginas

LABOMICRO2INFORME3

El informe detalla un laboratorio sobre el uso de interrupciones externas en el microcontrolador ATmega32, donde se implementan dos interrupciones para controlar un display de 7 segmentos y un juego de luces. Se presenta el código fuente utilizado y se concluye que el laboratorio permite verificar la aplicación práctica de las interrupciones. Además, se incluye una bibliografía para referencia adicional.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD MAYOR DE SAN ANDRÉS

FACULTAD DE TECNOLOGÍA
CARRERA DE ELECTRÓNICA Y TELECOMUNICACIONES

INFORME 3

LABORATORIO DE MICROPROCESADORES II
INTERRUPCIONES EXTERNAS EN EL ATMEGA32

DOCENTE: ING MARIN ARTURO

PARALELO: A

ESTUDIANTE: FUERTES ALIZARES MAYKI

LA PAZ – BOLIVIA

2021
FIRMA 1

El programa básicamente activa entre dos entradas de interrupciones activadas por


flanco de3 bajada y subida respectivamente para hacer funcionar un display de 7
segmentos.

CODIGO FUENTE

; LABORATORIO3INTERRUPCIONESFIRMA1.asm
; Created: 28/09/2021 11:12:07
; MAYKI FUERTES
.INCLUDE"M32DEF.INC"
.ORG 0x00 ;VECTOR DE RESET
RJMP INICIO ;SALTO A INICIO
.ORG 0x02 ;VECTOR DE INTERRUPCION EXTERNA 0
RJMP INT_EXT0
.ORG 0x04 ;VECTOR INTERRUPCION EXTERNA 1
RJMP INT_EXT1

INICIO:
LDI R16,HIGH(RAMEND) ;INICIALIZAMOS LA PILA
OUT SPH,R16
LDI R16,LOW(RAMEND)
OUT SPL,R16

CBI DDRD,2 ;CONFIGURAMOS ENTRADAS


CBI DDRD,3

SER R16 ;CONFIGURAMOS SALIDA


OUT DDRB,R16

LDI R16,0xC0 ;CARGAMOS GICR HABILTIANDO INT


OUT GICR,R16

LDI R16,0x0B ;HABILITAMOS INT0 POR SUBIDA Y INT1 POR BAJADA


OUT MCUCR,R16

SEI ;HABILTIAMOS LAS INT GLOBALES


LDI R16,0x00
LDI R17,0x09
PRINCIPAL:
RJMP PRINCIPAL

INT_EXT0:
LDI ZH,HIGH(TABLA<<1)
LDI ZL,LOW(TABLA<<1)
ADD ZL,R16
CLR R18
ADC ZH,R18
LPM R18,Z
OUT PORTB,R18
INC R16
CPI R16,0x0A
BRNE L0
CLR R16
L0: RETI
INT_EXT1:
LDI ZH,HIGH(TABLA<<1)
LDI ZL,LOW(TABLA<<1)
ADD ZL,R17
CLR R18
ADC ZH,R18
LPM R18,Z
OUT PORTB,R18
DEC R17
CPI R17,0xFF
BRNE L1
LDI R17,0x09
L1: RETI

TABLA:
.DB 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F

SIMULACION EN PROTEUS
FIRMA 2
El programa activa dos interrupciones y activa un juego de luces
.

CODIGO FUENTE

; LABORATORIO3INTERRUPCIONESFIRMA1.asm
; Created: 28/09/2021 11:12:07
; MAYKI FUERTES
.INCLUDE"M32DEF.INC"
.ORG 0x00 ;VECTOR DE RESET
RJMP INICIO ;SALTO A INICIO
.ORG 0x02 ;VECTOR DE INTERRUPCION EXTERNA 0
RJMP INT_EXT0
.ORG 0x04 ;VECTOR INTERRUPCION EXTERNA 1
RJMP INT_EXT1

INICIO:
LDI R16,HIGH(RAMEND) ;INICIALIZAMOS LA PILA
OUT SPH,R16
LDI R16,LOW(RAMEND)
OUT SPL,R16

CBI DDRD,2 ;CONFIGURAMOS ENTRADAS


CBI DDRD,3

SER R16 ;CONFIGURAMOS SALIDA


OUT DDRB,R16

LDI R16,0xC0 ;CARGAMOS GICR HABILTIANDO INT


OUT GICR,R16

LDI R16,0x05 ;HABILITAMOS INT0 POR CUALQUIER NIVEL


OUT MCUCR,R16

SEI ;HABILTIAMOS LAS INT GLOBALES


LDI R16,0x00
LDI R17,0x07
PRINCIPAL:
RJMP PRINCIPAL

INT_EXT0:
LDI ZH,HIGH(TABLA<<1)
LDI ZL,LOW(TABLA<<1)
ADD ZL,R16
CLR R18
ADC ZH,R18
LPM R18,Z
OUT PORTB,R18
INC R16
CPI R16,0x0A
BRNE L0
CLR R16
L0: RETI
INT_EXT1:
LDI ZH,HIGH(TABLA1<<1)
LDI ZL,LOW(TABLA1<<1)
ADD ZL,R17
CLR R18
ADC ZH,R18
LPM R18,Z
OUT PORTB,R18
DEC R17
CPI R17,0xFF
BRNE L1
LDI R17,0x07
L1: RETI

TABLA:
.DB 0x01,0x02,0x04,0x08,0x10,0x20,0x40
TABLA1:
.DB 0x18,0x24,0x42,0x81,0x42,0x24,0x18

SIMULACION EN PROTEUS
CONCLUSIONES

Bueno el laboratorio nos ayudo a verificar prácticamente como usar las interrupciones para asi hacer lo
que queramos en dichas interrupciones.

BIBLIOGRAFIA

https://www.electronicwings.com/avr-atmega/atmega1632-adc

También podría gustarte