Sie sind auf Seite 1von 21

VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

FORMATO DE GUÍA DE PRÁCTICA DE LABORATORIO / TALLERES /


CENTROS DE SIMULACIÓN – PARA DOCENTES

CARRERA: INGENIERÍA ELECTRÓNICA ASIGNATURA: SISTEMAS MICROPROCESADOS I


NRO. PRÁCTICA: 1 TÍTULO PRÁCTICA: Secuencia de leds con retardo de 1 segundo y manejo de pulsante
mediante MPLAB X IDE.
OBJETIVO GENERAL:
 Programar secuencia de encendido de leds y comando de led mediante pulsante.

OBJETIVOS ESPECÍFICOS:
 Realizar un Flujograma de la secuencia de encendido de leds y comando de led mediante pulsante.

 Realizar el código de la programación de la secuencia de encendido de leds y comando de led mediante pulsante

 Realizar la simulación de la secuencia de encendido de leds y comando de led mediante pulsante.

 Realizar la implementación en el Protoboard.

1. Requisitos y conocimientos previos


a) Programación Ensamblador
b) Electronica digital

2. Equipos, instrumentos y software


Descripción Cantidad Marca Identificación / serie
Computadora S.O. Windows 7, 1 - -
32 bits
Microcontrolador 1 Microchip Pic16f877a
Resistencias 12 - -
Encapsulado de leds 1 - -
Pulsante 2 - -
Protoboard 1 - -
Capacitores 2 - -
INSTRUCCIONES (Detallar las
Software para programación 1 - MPLAB X IDE
instrucciones que se dará al
Software para diseño 1 - Proteus
estudiante):

3. Exposición

 Microcontroladores

Se denomina microcontrolador a un dispositivo programable capaz de realizar


diferentes actividades que requieran del procesamiento de datos digitales y
del control y comunicación digital de diferentes dispositivos.
Los microcontroladores poseen una memoria interna que almacena dos tipos de
datos; las instrucciones, que corresponden al programa que se ejecuta, y
los registros, es decir, los datos que el usuario maneja, así como registros
especiales para el control de las diferentes funciones del microcontrolador.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Los microcontroladores se programan en Assembler y cada microcontrolador varía


su conjunto de instrucciones de acuerdo a su fabricante y modelo. De acuerdo al
número de instrucciones que el microcontrolador maneja se le denomina
de arquitectura RISC (reducido) o CISC (complejo).
Los microcontroladores poseen principalmente una ALU (Unidad Lógico
Aritmética), memoria del programa, memoria de registros, y pines I/O (entrada y/0
salida). La ALU es la encargada de procesar los datos dependiendo de las
instrucciones que se ejecuten (ADD, OR, AND), mientras que los pines son los
que se encargan de comunicar al microcontrolador con el medio externo;
la función de los pines puede ser de transmisión de datos, alimentación de
corriente para el funcionamiento de este o pines de control especifico.[1]

 Pic 16f877A

Este microcontrolador es fabricado por MicroChip familia a la cual se le denomina


PIC. El modelo 16F877 posee varias características que hacen a este
microcontrolador un dispositivo muy versátil, eficiente y practico.
Algunas de estas características del PIC:
Soporta modo de comunicación serial, posee dos pines para ello.
Amplia memoria para datos y programa.
Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH;
este tipo de memoria se puede borrar electrónicamente (esto corresponde a la "F"
en el modelo).
Set de instrucciones reducidas (tipo RISC), pero con las instrucciones necesarias
para facilitar su manejo. [2]

Figura 1 Pines del PIC16F877A

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 2 Diagrama de bloques del PIC16F877A.[3]

Periféricos
Relé:
Es un dispositivo que consta de dos circuitos diferentes: un circuito
electromagnético (electroimán) y un circuito de contactos, al cual aplicaremos el
circuito que queremos controlar. En la siguiente figura se puede ver su simbología
así como su constitución (rele de armadura).[4]

Figura 3 Relé

Oscilador de cristal:

Un oscilador de cristal es un oscilador electrónico que utiliza la resonancia


mecánica de un cristal vibratorio de material piezoeléctrico para crear una señal
eléctrica con una frecuencia precisa. Esta frecuencia se utiliza comúnmente para
controlar el tiempo, como en los relojes de cuarzo, para proporcionar una señal de
reloj estable para circuitos integrados digitales y para estabilizar las frecuencias de
los transmisores y receptores de radio. El tipo más común de resonador
piezoeléctrico utilizado es el cristal de cuarzo, por lo que los circuitos osciladores
que los incorporan se conocieron como osciladores de cristal, pero existen otros
materiales piezoeléctricos como las cerámicas policristalinas que se utilizan en
circuitos similares.[6]

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 4 Cristales de cuarzo

Retardos en MPLAB
Cuando necesitamos que transcurra un determinado tiempo de espera antes de
que ocurra un evento como por ejemplo el encendido de una luz, LED, activación
de una bobina de un relé o lectura de una determinada entrada, se suele recurrir
a los retardos. Prácticamente casi todos los programas de microcontroladores PIC
usan en algún momento una rutina de retardo.
Los retardos por Software consisten en que el Pic se quede ¨enciclado¨ durante
un tiempo. Es decir, es necesario usar uno o varios contadores que deberán ser
decrementados, cuando dichos contadores lleguen a 0 habrá concluido el retardo.
Ejemplo con flujograma:

Figura 5 Flujograma del retardo.

Bucles anidados
Estos bucles anidados consisten generar un Retardo base que se repetirá
n veces, el retardo base se hace de la manera anteriormente mencionada
usando un bucle que llamamos bucle interno, y al repetir este retardo base
n veces estamos formando un bucle mayor o bucle externo. [5]

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Con estos bucles se toma en cuenta la siguiente fórmula para calcular los
retardos con los que se requiere trabajar.
1
𝑅𝑒𝑡𝑎𝑟𝑑𝑜 = 𝑝 ∗ (𝑚 ∗ (𝑛 ∗ ))
𝐹𝑜𝑠𝑐

4. Proceso

Figura 6 Diagrama del proceso

ACTIVIDADES POR DESARROLLAR


(Anotar las actividades que deberá seguir el estudiante para el cumplimiento de la práctica)
1. Revisar el datasheet

2. Diseñar el flujograma del sistema

3. Programar la secuencia de leds y el comando de led mediante el pulsante en el software MPLAB


X IDE

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 7 Software MPLAB X IDE

4. Implementar el diseño en el software Proteus

Figura 8 Software Proteus

5. Grabar el pic, mediante el software pickit 2, el archivo .hex de la compilación de la programa


MPLAB.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 9 Quemador de PIC

6. Implementar el esquema en el protoboard.

Figura 10 Esquema armado

RESULTADO(S) OBTENIDO(S):
Los resultados obtenidos, tanto el programa como la simulación, se pueden observar en los archivos anexos. Se
programa mediante MPLAB X IDE con la respectiva simulación en Proteus, esto es de gran ayuda, ya que se
comprueba cualquier proceso o secuencia, y evita daños en el PIC o en el circuito armado.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 11 Secuencia de encendido para el led 5

Figura 12 Secuencia de encendido para el led 3

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 13 Comando de led mediante el pulsante

Figura 14 Secuencia de encendido para el led 8

CONCLUSIONES:
El microcontrolador PIC16F877A tiene una capacidad muy grande para el control de procesos, debido a ello se
puede crea un código más grande ya que el programa implementado en esta práctica no fue muy extenso.

Debido al sistema operativo de la PC, la sincronización del circuito armado con la simulación no es la misma, se
obtiene un retardo de milésimas de segundos en una secuencia pero en mientras mayor es el tiempo de ejecución,
el retardo tiende a ser de segundo.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

RECOMENDACIONES:
Es importante el uso de un simulador como Proteus, ya que con él se pudo comprobar el correcto funcionamiento
del programa, así como también de cada una de las subrutinas y secuencias implementadas. Lo que nos permitió
realizar los cambios necesarios previos a grabado del microcontrolador. Es necesario trabajar con la misma
frecuencia tanto en la simulación en Proteus y el código en MPLAB X IDE para el PIC 16F877A, pero esta dependerá
del funcionamiento de la simulación.

Para la sincronización entre la simulación y el circuito armado, el sistema operativo de la PC debe ser lo más rápido
posible o el rango de error tiende a ser mayor.

Docente / Técnico Docente: _____________________________

Firma: _______________________________

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

FORMATO DE INFORME DE PRÁCTICA DE LABORATORIO / TALLERES /


CENTROS DE SIMULACIÓN – PARA ESTUDIANTES

CARRERA: Ingeniería Electrónica ASIGNATURA: Sistemas Microprocesados I


NRO. PRÁCTICA: 01 TÍTULO PRÁCTICA: Secuencia de leds con retardo de 1 segundo y manejo de
pulsante mediante MPLAB X IDE.
OBJETIVO ALCANZADO
OBJETIVO GENERAL:
 Programar secuencia de encendido de leds y comando de led mediante pulsante.

OBJETIVOS ESPECÍFICOS:
 Realizar un Flujograma de la secuencia de encendido de leds y comando de led mediante pulsante.

 Realizar el código de la programación de la secuencia de encendido de leds y comando de led mediante


pulsante

 Realizar la simulación de la secuencia de encendido de leds y comando de led mediante pulsante.

 Realizar la implementación en el Protoboard.

MARCO TEORICO

 Microcontroladores

Se denomina microcontrolador a un dispositivo programable capaz de realizar diferentes actividades que requieran
del procesamiento de datos digitales y del control y comunicación digital de diferentes dispositivos.
Los microcontroladores poseen una memoria interna que almacena dos tipos de datos; las instrucciones, que
corresponden al programa que se ejecuta, y los registros, es decir, los datos que el usuario maneja, así como
registros especiales para el control de las diferentes funciones del microcontrolador.

Los microcontroladores se programan en Assembler y cada microcontrolador varía su conjunto de instrucciones de


acuerdo a su fabricante y modelo. De acuerdo al número de instrucciones que el microcontrolador maneja se le
denomina de arquitectura RISC (reducido) o CISC (complejo).
Los microcontroladores poseen principalmente una ALU (Unidad Lógico Aritmética), memoria del programa,
memoria de registros, y pines I/O (entrada y/0 salida). La ALU es la encargada de procesar los datos dependiendo
de las instrucciones que se ejecuten (ADD, OR, AND), mientras que los pines son los que se encargan de comunicar
al microcontrolador con el medio externo; la función de los pines puede ser de transmisión de
datos, alimentación de corriente para el funcionamiento de este o pines de control especifico.[1]

 Pic 16f877A

Este microcontrolador es fabricado por MicroChip familia a la cual se le denomina PIC. El modelo 16F877 posee
varias características que hacen a este microcontrolador un dispositivo muy versátil, eficiente y practico.
Algunas de estas características del PIC:
Soporta modo de comunicación serial, posee dos pines para ello.
Amplia memoria para datos y programa.
Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo de memoria se puede
borrar electrónicamente (esto corresponde a la "F" en el modelo).
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Set de instrucciones reducidas (tipo RISC), pero con las instrucciones necesarias para facilitar su manejo. [2]

Figura 15 Pines del PIC16F877A

Figura 16 Diagrama de bloques del PIC16F877A.[3]

Periféricos
Oscilador de cristal:

Un oscilador de cristal es un oscilador electrónico que utiliza la resonancia mecánica de un cristal vibratorio
de material piezoeléctrico para crear una señal eléctrica con una frecuencia precisa. Esta frecuencia se utiliza
comúnmente para controlar el tiempo, como en los relojes de cuarzo, para proporcionar una señal de reloj estable
para circuitos integrados digitales y para estabilizar las frecuencias de los transmisores y receptores de radio. El
tipo más común de resonador piezoeléctrico utilizado es el cristal de cuarzo, por lo que los circuitos osciladores que
los incorporan se conocieron como osciladores de cristal, pero existen otros materiales piezoeléctricos como las
cerámicas policristalinas que se utilizan en circuitos similares.[4]

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 17 Cristales de cuarzo

Retardos en MPLAB
Cuando necesitamos que transcurra un determinado tiempo de espera antes de que ocurra un evento como por
ejemplo el encendido de una luz, LED, activación de una bobina de un relé o lectura de una determinada entrada,
se suele recurrir a los retardos. Prácticamente casi todos los programas de microcontroladores PIC usan en algún
momento una rutina de retardo.
Los retardos por Software consisten en que el Pic se quede en un ciclo durante un tiempo. Es decir, es necesario
usar uno o varios contadores que deberán ser disminuidos, cuando dichos contadores lleguen a 0 habrán concluido
el retardo.

Figura 18 Flujograma del retardo.

Bucles anidados
Estos bucles anidados consisten generar un Retardo base que se repetirá n veces, el retardo base se
hace de la manera anteriormente mencionada usando un bucle que llamamos bucle interno, y al repetir
este retardo base n veces estamos formando un bucle mayor o bucle externo. [5]
Con estos bucles se toma en cuenta la siguiente fórmula para calcular los retardos con los que se requiere
trabajar.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

1
𝑅𝑒𝑡𝑎𝑟𝑑𝑜 = 𝑝 ∗ (𝑚 ∗ (𝑛 ∗ ))
𝐹𝑜𝑠𝑐

ACTIVIDADES DESARROLLADAS
1. Revisión de Datasheet’s.
2. Diseño de Flujograma.
Anexo A.
3. Programación en MPLAB X IDE
Anexo B.
Para la programación de retardos, se requiere que el tiempo de encendido de leds sea de 1 segundo y la frecuencia
de oscilación es de 20 MHz, por lo que reemplazando en la fórmula de retardos se obtiene:
1
𝑅𝑒𝑡𝑎𝑟𝑑𝑜 = 𝑞 ∗ (𝑝 ∗ (𝑚 ∗ (𝑛 ∗ )))
𝐹𝑜𝑠𝑐
1
1 𝑠 = 200𝑚𝑠 ∗ 200𝑚𝑠 ∗ 125𝑚𝑠 ∗ 10 ∗
20𝑀ℎ𝑧
Por lo que el valor de 𝑞 = 𝑝 = 200, el valor de 𝑚 = 125 y 𝑛 = 10 con estas condiciones se obtiene un retardo de 1
segundo. Con estos datos se implementa el retardo para el encendido y apagado de leds.

4. Simulación
Anexo C.
5. Grabado del PIC.
6. Armado del circuito.
Lista de Materiales
1 Pic 16F877A
1 Cristal de Cuarzo de 20MHz
2 Condensadores de 22pF
2 Pulsantes
1 Encapsulado de Leds
10 Resistencias de 330 ohmios
2 Resistencias de 10k ohmios
1 Fuente

RESULTADO(S) OBTENIDO(S):

Los resultados obtenidos, tanto el programa como la simulación, se pueden observar en los archivos anexos. Se
programa mediante MPLAB X IDE con la respectiva simulación en Proteus, esto es de gran ayuda, ya que se
comprueba cualquier proceso o secuencia, y evita daños en el PIC o en el circuito armado.

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

CONCLUSIONES:

El microcontrolador PIC16F877A tiene una capacidad muy grande para el control de procesos, debido a ello se
puede crea un código más grande ya que el programa implementado en esta práctica no fue muy extenso.

Debido al sistema operativo de la PC, la sincronización del circuito armado con la simulación no es la misma, se
obtiene un retardo de milésimas de segundos en una secuencia pero en mientras mayor es el tiempo de ejecución,
el retardo tiende a ser de segundo.

RECOMENDACIONES:

Es importante el uso de un simulador como Proteus, ya que con él se pudo comprobar el correcto funcionamiento
del programa, así como también de cada una de las subrutinas y secuencias implementadas. Lo que nos permitió
realizar los cambios necesarios previos a grabado del microcontrolador. Es necesario trabajar con la misma
frecuencia tanto en la simulación en Proteus y el código en MPLAB X IDE para el PIC 16F877A, pero esta
dependerá del funcionamiento de la simulación.

Para la sincronización entre la simulación y el circuito armado, el sistema operativo de la PC debe ser lo más rápido
posible o el rango de error tiende a ser mayor.

Bibliografía
[1] Cifpn1hectorm.wordpress.com. Estudio de la estructura interna del PIC16f877A. Hector Marlote. [En línea].
Disponible en: https://cifpn1hectorm.wordpress.com/2013/04/10/estudio-de-la-estructura-interna-del-pic-16f877.
Consultado en: 10/12/2016.
[2] Descripción del PIC16F877. Danny Herrera. [En línea]. Disponible en:
http://www.monografias.com/trabajos18/descripcion-pic/descripcion-pic.shtml. Consultado en: 10/12/2016.
[3] MikroElectronica_Microcontrolador PIC16F877A. [En línea]. Disponible en:
http://learn.mikroe.com/ebooks/microcontroladorespicc/chapter/caracteristicas-basicas-del-pic16f887/. Consultado
en: 10/12/2016.
[4] Oscilador de Cristal. Anónimo. [En línea]. Disponible en: https://es.wikipedia.org/wiki/Oscilador_de_cristal.
Consultado en: 10/12/2016.
[5] Bucles anidados. Joel Campos. [En línea]. Disponible en:
https://campusvirtual.univalle.edu.co/moodle/pluginfile.php/161484/mod_resource/content/0/clase_3/Generar-
retardos-para-PIC-en-MPLAB.pdf

Nombre de estudiante: Tatiana Alexandra Jara Quito

Firma de estudiante: _______________________________

ANEXOS

ANEXO A: FLUJOGRAMA

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 19 Flujograma

FOTOS DE LA PRACTICA

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 20 Comando de led mediante el pulsante

Figura 21 Secuencia de encendido para el led 8

ANEXO C: ESQUEMA ELÉCTRICO

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

Figura 22 Esquema simulado

ANEXO B: CODIGO DEL PROGRAMA

; PIC16F877A Configuration Bit Settings

; Assembly source line config statements

#include "p16f877a.inc"

; CONFIG
; __config 0xFF39
__CONFIG _FOSC_HS & _WDTE_OFF & _PWRTE_OFF & _BOREN_OFF & _LVP_OFF &
_CPD_OFF & _WRT_OFF & _CP_OFF

#DEFINE LED1 PORTD,7


#DEFINE LED2 PORTD,6
#DEFINE LED3 PORTD,5
#DEFINE LED4 PORTD,4
#DEFINE LED5 PORTC,7
#DEFINE LED6 PORTC,6
#DEFINE LED7 PORTC,5
#DEFINE LED8 PORTC,4
#DEFINE LED9 PORTD,3

Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

#DEFINE LED10 PORTD,2


#DEFINE BOTON PORTB,0

TIEMPO EQU 0x0C


TIEMPO1 EQU 0x0D
TIEMPO2 EQU 0x0E
TIEMPO3 EQU 0x20
CONTA_1 EQU 0x20
CONTA_2 EQU 0x20

org 0
bsf STATUS, RP0

movlw b'00111111'
movwf TRISB

CLRF PORTD ; CONFIGURA COMO SALIDA PUERTO D


CLRF PORTC ; CONFIGURA COMO SALIDA PUERTO D
BCF STATUS, RP0
CLRF PORTB
CLRF PORTD
CLRF PORTC

INICIO
BSF LED1 ; COLOCA EN 1 EL BIT RB0
CALL RETARDO
BCF LED1
CALL RETARDO
BSF LED2
CALL RETARDO
BCF LED2
CALL RETARDO
BSF LED3
CALL RETARDO
BCF LED3
CALL RETARDO
BSF LED4
CALL RETARDO
BCF LED4
CALL RETARDO
BSF LED5
CALL RETARDO
BCF LED5
CALL RETARDO
BSF LED6
CALL RETARDO
BCF LED6
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

CALL RETARDO
BSF LED7
CALL RETARDO
BCF LED7
CALL RETARDO
BSF LED8
CALL RETARDO
BCF LED8
CALL RETARDO
BSF LED9
CALL RETARDO
BCF LED9
CALL RETARDO

explorar_boton
BTFSC BOTON ;exploramos el boton
GOTO explorar_boton ;no se presiono, entonces sigue explorarndo
CALL Retardo_20ms ;si se pulso, entonces demora de 20ms
BSF LED10
CALL RETARDO
BCF LED10
CALL RETARDO

GOTO INICIO ;repetir el ciclo

Retardo_20ms
MOVLW D'5' ; CARGA W CON 255
MOVWF TIEMPO2 ; TIEMPO=255

MOVLW D'100' ; CARGA W CON 255


MOVWF TIEMPO1 ; TIEMPO=255

MOVLW D'200' ; CARGA W CON 255


MOVWF TIEMPO ; TIEMPO=255

nop

DECFSZ TIEMPO,F ;
GOTO $-.2
DECFSZ TIEMPO1,F ;
GOTO $-.6
DECFSZ TIEMPO2,F ;
GOTO $-.10
RETURN

GOTO INICIO
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001

CONSEJO ACADÉMICO Aprobación: 2016/04/06

Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación

RETARDO

MOVLW D'20'
MOVWF TIEMPO3
MOVLW D'125'
MOVWF TIEMPO2
MOVLW D'200'
MOVWF TIEMPO1
MOVLW D'200'
MOVWF TIEMPO
GOTO explorar_boton

nop

DECFSZ TIEMPO,F ;
GOTO $-.2
DECFSZ TIEMPO1,F ;
GOTO $-.6
DECFSZ TIEMPO2,F ;
GOTO $-.10
DECFSZ TIEMPO3,F ;
GOTO $-.14
RETURN

END

Resolución CS N° 076-04-2016-04-20

Das könnte Ihnen auch gefallen