Está en la página 1de 7

Diseño de productos electrónicos con

microcontroladores (1910390)

INSTRUCTOR:
ESTEBAN ECHEVERRI ESTRADA

APRENDIZ:
YEISON HURLEY CONTRERAS CHAPARRO

SENA
2019
ACTIVIDAD 3
Nombre de la actividad:
Manejo de salidas en un microcontrolador: LED y Display de 7 segmentos

Objetivo
Identificar las instrucciones en un código ASM para el manejo de salidas a un LED y a un Display

Situación:
La empresa requiere que la llegada de camiones a la empresa sea anunciada con una señal luminosa
que parpadee y en un display de 7 segmentos aparezca el número de la puerta donde se ha activado
el sensor de presencia instalado. Se ha adquirido un sistema automatizado con microcontroladores
y usted debe revisar si el código cumple con las características solicitadas. Procedimiento: 1. Revise
los contenidos del curso asociados al Manejo de salidas a un LED y a un Display de 7 segmentos. 2.
Consulte información para profundizar sobre el funcionamiento y programación de leds y display

Temas asociados:
• Configuración de un display de 7 segmentos

• Lenguaje ASM

Entregas:
Para este análisis, puede utilizar la guía que aparece a continuación para desarrollar los siguientes
productos:

1. Comentarios de las líneas de programación del código suministrado por el proveedor de servicios.

2. Descripción de los pines de entrada y salida utilizados para el sistema automatizado

3. Diagrama de flujo del programa de automatización.

Una vez finalizada, comprima el archivo en formato .zip o .rar, dando clic derecho al archivo, Enviar
a, Carpeta comprimida. Luego envíela a su facilitador a través del medio utilizado para tal fin en el
curso.
DOCUMENTO GUÍA
Diseño de productos electrónicos con microcontroladores
1. Comentarios de líneas de código

COMENTARIOS
List p=16F628A define el micro a utilizar
radix Hex Usaremos la numeración
Hexadecimal
w equ 0 Se crea variable w con valor 0
f equ 1 Se crea variable f con valor 1
PCL equ 0x02 Dirección registro PCL, contador de
programa.
Estado equ 0x03 Cargar la variable Estado en equ 0x03
PuertaA equ 0x05 Asignar posición 5 como PuertaA
PuertaB equ 0x06 Asignar posición 6 como PuertaB
VALOR equ 0x0C Cargar la variable equ en 0x0C
org 0 Ir a la posición 0
goto Empiezo Salta a Empiezo
org 5 Ir a la posicion5 si hay interrupción
Empiezo bsf Estado,5 Colocar en uno Banco de memoria 1
clrw Coloca en cero el registro w
movwf PuertaB Coloca los pines del puertaB como
salidas.
movlw 0xff Escribe FF en el registro w
movwf PuertaA Coloca los pines del puertoA como
entradas.
bcf Estado,5 Vuelve al Banco o
Explora movf PuertaA,w Movemos el contenido de puertaA a
w
movwf VALOR Mover el valor de w a VALOR
comf VALOR,f Invierte los valores de f y los
coloca en VALOR
clrw Coloca el registro w a cero
Btfss VALOR,0 Comprueba que EL pin 0 de VALOR
este en 1, sino vaya a la sgte línea
goto bit_1 Salta a bit_1
addlw 0x01 Sumamos 01h a w y lo deposita en
w
bit_1 btfss VALOR,1 Comprueba el bit 1 VALOR esté e
uno
goto bit_2 Salta a bit_2
addlw 0x02 Sumamos 02h a w y lo deposita en
w
bit_2 btfss VALOR,2 Comprueba que el bit 2 de VALOR
este en 1
goto bit_3 Salta a bit_3
addlw 0x04 Sumamos 04h a w y lo deposita en
w
bit_3 btfss VALOR,3 Comprueba que el bit 3 de VALOR
este en 1
goto visual Salta a visual
addlw 0x08 Sumamos 08h a w y lo deposita en
w
visual call display Salta y llama a Display
movwf PuertaB Mover el valor de w a PuertaB
goto Explora Salta a Explora
display addwf PCL,f Acumulador
retlw 0x3f Retorne el valor de w
retlw 0x06 1
retlw 0x5b 2
retlw 0x4f 3
retlw 0x66 4
retlw 0x6d 5
retlw 0x7d 6
retlw 0x07 7
retlw 0x7F 8
retlw 0x6F 9
retlw 0x77 A
retlw 0x7C B
retlw 0x39 C
retlw 0x5E D
retlw 0x79 E
retlw 0x71 F
END Fin

2. Descripción de pines de entrada y salida

ESQUEMA DEL PIC PINES DE ENTRADA PINES DE SALIDA


2 RA0/AN0 - Puerto A 21 RB0/INT -
3 RA1/AN1 - Puerto A Port B
4 RA2/AN2/Vref/CVref 22 RB1 - Port B
- Puerto A 23 RB2 - Port B
5 RA3/AN3/Vref - 24 RB3/PGM -
Puerto A Port B
6 RA4/TOCK1/C1OUT 25 RB4 - Port B
- Puerto A 26 RB5 - Port B
7 RA5/AN4/SS/C2OUT 27 RB6/PGC -
- Puerto A Port B
28 RB7/PGD -
Port B
3. Diagrama de flujo del programa de automatización (código .asm del punto 1)

INICIO

Declaración de
variables

Configura puerto A
como entrada y puerto
B como salida

No W=W+01
Valor
Bit_1=1
?

Si

No W=W+01
Valor
Bit_2=1
?

Valor No W=W+01
Bit_3=1
?

VISUAL

PCL=PCL+W

W=PUERTAB

Visualizacion en el

display

Fin

También podría gustarte