0% encontró este documento útil (0 votos)
39 vistas7 páginas

Programación y ensamblaje PIC16F877A

Este documento describe el uso de herramientas de programación para ensamblar y ejecutar un programa en lenguaje ensamblador para el microcontrolador PIC16F877A. Se explican conceptos como el microcontrolador PIC16F877A, el entorno de desarrollo MPLAB y el proceso de elaborar, rectificar y probar código ensamblador para el PIC.
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)
39 vistas7 páginas

Programación y ensamblaje PIC16F877A

Este documento describe el uso de herramientas de programación para ensamblar y ejecutar un programa en lenguaje ensamblador para el microcontrolador PIC16F877A. Se explican conceptos como el microcontrolador PIC16F877A, el entorno de desarrollo MPLAB y el proceso de elaborar, rectificar y probar código ensamblador para el PIC.
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

1.

Objetivo
Utilizar herramientas para ensamblar y ejecutar el primer programa en
lenguaje ensamblador para el microcontrolador 16F877A.
2. Marco Teórico
PIC16F877A
El PIC16F877A es un microcontrolador de Microchip Technology fabricado en tecnología
CMOS, su consumo de potencia es muy bajo y además es completamente estático, esto quiere
decir que el reloj puede detenerse y los datos de la memoria no se pierden. El encapsulado
más común para este microcontrolador es el DIP (Dual In-line Pin) de 40 pines. Los pines de
entrada/salida de este microcontrolador están organizados en cinco puertos, el puerto A con 6
líneas, el puerto B con 8 líneas, el puerto C con 8 líneas, el puerto D con 8 líneas y el puerto
E con 3 líneas. Cada pin de esos puertos se puede configurar como entrada o como salida
independiente programando un par de registros diseñados para tal fin. En ese registro un bit
en “0” configura el pin del puerto correspondiente como salida y un bit en “1” lo configura
como entrada. En la Figura 1 se observa la distribución de los pines del PIC16F877A, los
bancos se muestran clasificados por colores. El banco A en color naranja, banco B en azul,
banco C en morado, banco D en rojo y banco E en verde.[1]
Figura 1. Distribución de pines del PIC16F877A.
MPLAB
MPLAB es un entorno de desarrollo integrado (IDE) utilizado para programar
microcontroladores PIC (Peripheral Interface Controller) fabricados por Microchip
Technology. El acrónimo "MPLAB" significa "Microchip PIC (Peripheral Interface
Controller) Development Laboratory".Este entorno de desarrollo proporciona herramientas
completas para escribir, compilar, depurar y simular código para microcontroladores
PIC.MPLAB ofrece una interfaz de usuario amigable donde los desarrolladores pueden
escribir, compilar y depurar su código de manera eficiente. Es compatible con varios
compiladores para microcontroladores PIC, incluidos los compiladores de la serie MPLAB
XC. Estos compiladores traducen lenguajes de programación de alto nivel (como C o
ensamblador) a código máquina que puede ejecutar el microcontrolador PIC.Ofrece
capacidades sólidas de depuración, lo que permite a los desarrolladores recorrer su código,
establecer puntos de interrupción, observar variables e inspeccionar el contenido de la
memoria durante la ejecución. Esto ayuda a identificar y corregir errores en el
código.MPLAB incluye un simulador que permite a los desarrolladores probar su código sin
necesidad de hardware real. Esto es especialmente útil durante las primeras etapas de
desarrollo cuando el hardware puede no estar disponible. Proporciona bibliotecas y ejemplos
de código para varios periféricos y características de los microcontroladores PIC, facilitando
la interfaz con dispositivos y sensores externos.[2]

3. Procedimiento y desarrollo.
La elaboración y rectificación del código proporcionado por nuestro profesor es fundamental
para familiarizarnos con la programación de microcontroladores PIC y comprender cómo se
evalúa cada sección del mismo. Este proceso nos brinda una oportunidad invaluable para
adquirir experiencia práctica en el desarrollo de aplicaciones para dispositivos embebidos.Al
trabajar en la elaboración del código, exploramos las diversas funcionalidades y
características del microcontrolador, así como su integración con componentes externos. Esto
nos permite comprender mejor su arquitectura y su funcionamiento interno. Además, al
rectificar el código, podemos identificar y corregir posibles errores o malentendidos,
consolidando así nuestro conocimiento y habilidades en programación.El código
proporcionado por nuestro profesor sirve como punto de partida para nuestro aprendizaje,
pero al elaborarlo y rectificar, estamos dando pasos importantes hacia la autonomía en el
desarrollo de proyectos con microcontroladores PIC. Este proceso nos permite no solo
comprender el código existente, sino también mejorar nuestras capacidades de resolución de
problemas y diseño de soluciones eficientes.
Figura 2. Codigo de ensamblador de PIC
Circuito en simulador de Proteus que usamos principalmente para poder corroborar que el
codigo fuera correcto y asi poder realizar las instrucciones.
Figura 3. simulación de pic con archivo de código.
4. Resultados
Después de elaborar y rectificar el código proporcionado por nuestro profesor, procedimos a
realizar el ensamblado del programa en el microcontrolador PIC. Este paso crucial nos
permitió traducir el código fuente en instrucciones de bajo nivel comprensibles por el PIC,
preparándolo para su ejecución.

Una vez que el programa fue ensamblado con éxito, procedimos a implementar el circuito
físico correspondiente. Configuramos cuidadosamente el entorno de trabajo, conectando los
componentes necesarios según las especificaciones del circuito diseñado. Esta etapa nos
brindó una valiosa oportunidad para aplicar nuestros conocimientos teóricos en un entorno
práctico, adquiriendo experiencia práctica en el proceso.

Al realizar el montaje del circuito físico, pudimos presenciar de primera mano cómo se
enviaban las instrucciones desde el microcontrolador al dispositivo periférico, en este caso,
nuestro LED. Fue emocionante observar cómo la programación que habíamos desarrollado se
traducía en acciones físicas, como la iluminación del LED, demostrando la interacción
efectiva entre el software y el hardware.
Figura 4. Implementación de circuito físico funcionando
correctamente.
5. Conclusiones
Aunque la práctica en general fue enriquecedora, debo destacar que enfrenté algunos desafíos
personales durante el proceso, especialmente al programar el PIC. En particular, los
programadores disponibles en el laboratorio presentaron dificultades para detectar el PIC
correctamente o experimentaron problemas al insertarlo y leerlo. Estas dificultades técnicas
representaron un obstáculo significativo en mi experiencia, ya que limitaron mi capacidad
para avanzar de manera fluida en la etapa de programación.
A pesar de estos contratiempos, debo resaltar que el código en sí mismo resultó ser bastante
sencillo y fácil de entender una vez superados los problemas de programación. El proceso de
comprender y modificar el código fue accesible y me permitió consolidar mi comprensión de
los conceptos fundamentales de programación para microcontroladores PIC.

La creación del circuito físico y la implementación del programa resultaron ser procesos
relativamente sencillos y rápidos. Sin embargo, durante la manipulación del PIC, nos dimos
cuenta de que eran bastante sensibles y requerían un manejo cuidadoso. Nos percatamos de la
importancia de tratarlos con delicadeza y precaución, evitando cualquier movimiento brusco
o mal contacto, ya que notamos que la mayoría de nuestros compañeros también enfrentaban
dificultades similares.La sensibilidad del PIC se convirtió en un aspecto crucial a tener en
cuenta mientras trabajábamos en el laboratorio. Nos dimos cuenta de que incluso el
movimiento más mínimo podía interrumpir la conexión y causar problemas en la lectura o
programación del dispositivo. Por lo tanto, adoptamos una actitud más cautelosa y meticulosa
al manipular los PIC, asegurándonos de mantenerlos firmemente en su lugar y evitar
cualquier movimiento innecesario que pudiera afectar su funcionamiento.

6. Referencias
[1]Microchip Technology Inc. (2001). PIC16F87XA Data Sheet. Microchip Technology
Inc.[Online].Available: https://ww1.microchip.com/downloads/en/DeviceDoc/39582e.pdf
[2]MPLAB Inc. (2005). MPLAB Data Sheet. [Online].Available:
https://unioviedo.es/ate/alberto/Entorno%20MPLAB_v7xx.pdf

También podría gustarte