MPLAB IDE
PROGRAMACIÓN DE MICROCONTROLADORES
Laboratorio N°9 y 10
Programación y simulación del APLICATIVO 2
INFORME
Integrantes:
Apellidos y Nombres Sección Grupo
Delgado Muñoz, Sofía A
Misari Silvestre, Reybin A
Bautista Cadillo, Jhonatan A
Docente: Ing. Carlos E. Mendiola Mogollón
Fecha de realización: 27/04/21
Fecha de entrega: 14/05/21
TECSUP 2021
Lima – Perú
Instructor: Ing. Carlos E. Mendiola Mogollón 1
MPLAB IDE
I. Índice
II. Introducción ......................................................................................................... 3
III. Objetivos .......................................................................................................... 3
IV. Materiales y equipos .......................................................................................... 3
V. Marco Teórico....................................................................................................... 3
VI. Procedimiento ................................................................................................... 4
VII. Observaciones ................................................................................................. 11
VIII. Conclusiones ................................................................................................... 12
IX. Bibliografía...................................................................................................... 12
Instructor: Ing. Carlos E. Mendiola Mogollón 2
MPLAB IDE
II. Introducción:
En el presente laboratorio es un conjunto de dos laboratorios N°9 y 10, nos presenta un
ejercicio sobre el puerto serial, en especial con el uso del Labview y Proteus para lograr
una conexión serial para observar su visualización y además controlarlo.
III. Objetivos:
• Trasmitir datos del microcontrolador a la PC.
• Recibir datos de la computadora al microcontrolador.
• Uso de instrucciones para la programación del microcontrolador PIC16F877A
• Uso del MPLAB y la implementación con Proteus.
IV. Materiales y equipos:
• Pc + internet
• Software MPLAB IDE
• Software Proteus V8.1
• Labview
V. Marco Teórico:
Microcontrolador:
• Comunicación serial:
Para realizar la comunicación serial entre 2 sistemas distintos, en este caso se usará un PIC y
una computadora se necesita de un Terminal Virtual, para este laboratorio se usó el software
de MPLAB para realizar la programación en lenguaje ensamblador y el software Proteus 8
para poder implementar y probar el programa realizado.
Fig. N°01. Puerto serial
Uno de los protocolos de comunicación que podemos emplear con nuestros dispositivos
electrónicos embebidos, es la utilización de la comunicación serial o comunicación serie
para poder interactuar con diferentes dispositivos. Es por eso que en el día de hoy vamos
a enseñarte como programar e implementar una comunicación serial con PIC utilizando
un compilador en lenguaje ensamblador.
Instructor: Ing. Carlos E. Mendiola Mogollón 3
MPLAB IDE
• ¿Qué es la comunicación serial?
La comunicación serial es un protocolo muy común usado para comunicar 2 dispositivos
o más, estos pueden ser computadores que tienen procesadores o en microprocesadores
como es el caso del PIC 16F877A.
Fig. N°02. Puerto Serial
A demás la comunicación serial se puede llegar a utilizar para la adquisición de datos si se
usa en conjunto con un dispositivo de muestreo.
VI. Procedimiento:
Fig. Nº01. 1er Parte de programación
En esta primera parte de la programación se logra observar las configuraciones básicas al
iniciar una programación , que son incluir el tipo de microcontrolador , la frecuencia de
este (20Hz). Posteriormente hemos agregado variables que se van a usar para su
programación “numero”, “numero 1” y “MEMORIA”.
Instructor: Ing. Carlos E. Mendiola Mogollón 4
MPLAB IDE
Fig. Nº1.1 2da Parte de programación
En esta segunda parte de la programación es para configurar los puertos y los registros y
su inicialización mediante instrucciones y subrutinas usadas para su funcionamiento.
Observamos que abrimos el banco 1, banco 0 y modificamos como salidas del puerto C de ciertos
pines, ya que, solo necesitaremos algunos de estos.
Además, también se borrará el contenido de estos como medida de seguridad y no halla valores que
se puedan guardar.
Posteriormente hacemos el inicio LCD y además borraremos el LCD y mantendremos el cursor en
ON y finalmente el llamado “RS232_Inicializa” es esencial para la comunicación del puerto serial al
Labview.
Instructor: Ing. Carlos E. Mendiola Mogollón 5
MPLAB IDE
Fig. Nº1.2 3ra Parte de programación.
Instructor: Ing. Carlos E. Mendiola Mogollón 6
MPLAB IDE
En esta tercera parte comenzaremos con el programa principal, primero que nada hicimos
un “Inicio” para hacer un bucle, luego pondremos borrar el contenido de nuestras
variables por seguridad y también que sea capaz de leer el dato para el Puerto Serial.
Luego usaremos la verificación de las teclas asignadas para el funcionamiento del
programa con el uso de la instrucción de comparar “csi” y estos lo llevaran según el estado
de cada letra.
Tener en cuenta que cada estado es diferente ya que cumple diferentes funciones.
Este primer estado se borrar la variable que contiene “numero” para luego que pase un
tiempo de 255 ms y llamar al puerto serial y este moverlo al Labview .
También observamos el uso de otro comparador que es para el uso del “Enter”. Si este se
cumple ira a la acción que hace esta tecla “A”.
Del mismo modo se repiten en las demás teclas, pero sus funciones cambian.
Instructor: Ing. Carlos E. Mendiola Mogollón 7
MPLAB IDE
Fig. Nº1.4 3ra parte de programación
Ahora se proseguirá con la parte importante y la cual es funcional para este, que son las
acciones de cada tecla designada.
LabView:
Instructor: Ing. Carlos E. Mendiola Mogollón 8
MPLAB IDE
Funcionamiento en Proteus:
Fig. N°01. Letra B
Fig. N°02. Letra A
Instructor: Ing. Carlos E. Mendiola Mogollón 9
MPLAB IDE
Fig. N°03. Tecla C, Funcionamiento On/Off
Fig. N°3.1 SetPoint 30 Temperatura a 20
Instructor: Ing. Carlos E. Mendiola Mogollón 10
MPLAB IDE
Fig. N°3.2 SetPoint 10 Temperatura a 40
Fig. N°04. Ensamble de la programación
VII. Observaciones:
• Se pudo ver que al intentar realizar el codigo en lenguaje asm se necesitaba de la
Rutina serial para poder comunicar el proteus con el LabVIEW
• Para realizar la conversión del valor del sensor a binario fue necesario usar la
subrutina ADC8bits, de esta manera se puede lograr mostrar en el LCD.
• La multiplicación de bits fue necesaria para poder mostrar en el LCD el valor de
temperatura que nos enviaba el sensor, esto fue realizado uno por uno como f ue
enseñado en clase.
Instructor: Ing. Carlos E. Mendiola Mogollón 11
MPLAB IDE
VIII. Conclusiones:
• Se concluyo que la multiplicacion de bits era una de las partes mas
importantes para poder visualizar el resultado de temperatura en el LCD o
LabVIEW.
• Para lograr multiplicar los valores obtenidos en el registro RegADC1 lo
movimos al registro MEMORIA1 al cual multiplicamos por el valor 01,
logrando que la temperatura se muestre en la LCD cambiando su valor de 10
en 10
• Se logro concluir que el control de temperatura ON/OFF puede tener siempre
tiene unos picos en los extremos de los valores, esto al implementar el
circuito en físico.
IX. Bibliografía:
• DataSheet Microcontrolador PIC16F877. Recuperado de:
[Link]
[Link]
• Puerto Serial (2015). Recuperado de: [Link]
[Link]/TUTORIALES/puerto-serial/
Instructor: Ing. Carlos E. Mendiola Mogollón 12