Programación de Los Microcontroladores - Microcontroladores PIC – Programación en C Con Ejemplos
02.- Programación de Microcontroladores
-
Upload
pablo-orellana-tapia -
Category
Documents
-
view
253 -
download
8
description
Transcript of 02.- Programación de Microcontroladores
![Page 1: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/1.jpg)
![Page 2: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/2.jpg)
Programación de Microcontroladores.UNIDAD II:
![Page 3: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/3.jpg)
Aprendizajes Esperados
2.1.- Programa instrucciones básicas utilizando el Ensamblador MPLAB a través de presentación con demostración y experiencia práctica de laboratorio, de manera multidisciplinaria con problemas complejos.
2.2.- Simula la ejecución de los programas utilizando el ensamblador MPLAB y/o algún otro simulador como proteus mediante prácticas de laboratorio y taller.
2.3.- Implementa circuitos con microcontrolador para observar el funcionamiento real de un programa, mediante prácticas de laboratorio y taller.
![Page 4: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/4.jpg)
PROGRAMACIÓN EN LENGUAJE DE BAJO NIVEL
![Page 5: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/5.jpg)
REPERTORIO RISC
![Page 6: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/6.jpg)
REPERTORIO RISCCaracterísticas
Todos los modelos de microcontroladores PIC responden a la arquitectura RISC, que significa «computador de juego de instrucciones reducido».
— Las instrucciones son simples y rápidas. La falta de complejidad en la operación que realizan las instrucciones de los procesadores RISC permite que sean ejecutadas mayoritariamente en un solo ciclo de instrucción. Los PIC tardan en ejecutar todas las instrucciones un ciclo, excepto las de salto, que tardan el doble.
— Las instrucciones son ortogonales. Apenas tienen restricciones en el uso de operandos. Cualquier instrucción puede usar cualquier operando.
— La longitud de las instrucciones y los datos es constante.Todas las instrucciones tienen la misma longitud, 14 bits en los PIC16X8X, y todos los datos también, un byte.
![Page 7: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/7.jpg)
REPERTORIO RISCInstrucciones que manejan registros
![Page 8: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/8.jpg)
REPERTORIO RISC
Instrucciones que manejan bits
![Page 9: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/9.jpg)
REPERTORIO RISC
Instrucciones de brinco
![Page 10: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/10.jpg)
REPERTORIO RISC
Instrucciones que manejan operandos inmediatos
![Page 11: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/11.jpg)
REPERTORIO RISC
Instrucciones de control y especiales
![Page 12: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/12.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 13: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/13.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 14: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/14.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 15: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/15.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 16: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/16.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 17: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/17.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 18: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/18.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 19: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/19.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 20: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/20.jpg)
REPERTORIO RISCEjemplo de aplicación de algunas instrucciones
![Page 21: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/21.jpg)
PROGRAMACIÓNEN ASSEMBLER
![Page 22: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/22.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
MPLAB ® Entorno de Desarrollo Integrado
Con el MPLAB IDE se pueden realizar todas las tareas que participan en el desarrollo de un proyecto: editar el programa fuente, ensamblarlo o compilarlo (si se dispone de compilador), simular el comportamiento del programa ejecutable y, con las herramientas precisas, también se puede emular, depurar en circuito y grabar el programa sobre la memoria el microcontrolador.
![Page 23: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/23.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
MPLAB ® Entorno de Desarrollo Integrado
![Page 24: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/24.jpg)
CREANDO UN PROYECTO EN MPLAB IDE
![Page 25: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/25.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
![Page 26: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/26.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Seleccionamos Proyect Wizard…
![Page 27: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/27.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Seleccionamos el PIC
![Page 28: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/28.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
El tipo de compilador
![Page 29: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/29.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Nombre del proyecto
Es conveniente crear una carpeta para el proyecto
![Page 30: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/30.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDEAquí se pueden agregar archivos
fuente al proyecto
![Page 31: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/31.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDEFinal de la configuración, en esta ventana esta el resumen del proyecto
![Page 32: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/32.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDEVentana con los archivos
del proyecto.
![Page 33: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/33.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDEPara escribir el código del
programa, se debe ir a File New
![Page 34: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/34.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDEAquí se escribe el código del
programa
![Page 35: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/35.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Se debe guardar el código del programa, ir a File Save Ass... En la
carpeta creada anteriormente
No importando el nombre del archivo la extensión debe
ser .asm
![Page 36: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/36.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Después de guardar el archivo con el código del programa se debe
agregar al proyecto. Pinchar con el botón secundario.
Seleccionamos Add Files…
![Page 37: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/37.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Iniciando un proyecto en MPLAB ® IDE
Seleccionamos el archivo con extensión .asm
![Page 38: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/38.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Escribiendo el primer programa con MPLAB ® IDE
En encabezado de un programa en assembler se debe indicar el tipo de procesador que se utilizará en el proyecto y los registros del Micro
![Page 39: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/39.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Escribiendo el primer programa con MPLAB ® IDE
El inicio del programa se indica con el comando ORG más la dirección de inicio del programa (donde se desea que el programa sea grabado en la memoria de programa del Micro). Posteriormente se escriben las instrucciones y se indica el termino del programa con e comando END.
![Page 40: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/40.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Escribiendo el primer programa con MPLAB ® IDE
![Page 41: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/41.jpg)
SIMULANDO UN PROGRAMA EN MPLAB IDE
![Page 42: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/42.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Simulando el programa con MPLAB ® IDE
El programa que simularemos es el siguiente
![Page 43: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/43.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Simulando el programa con MPLAB ® IDE
Ir a DebuggerSelect ToolMAPLAB SIM
![Page 44: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/44.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Simulando el programa con MPLAB ® IDE
1.- La opción Run ejecuta el programa, que no se detendrá hasta que bien se acabe el programa, el simulador llegue a un punto de ruptura o bien se utilice la opción Halt, quedetiene la ejecución del programa.2.- La opción Animate también ejecuta el programa, pero de forma animada. Es decir,ejecuta más lentamente el programa y resaltando en pantalla cada instrucción que estáejecutándose para seguir visualmente dicha ejecución.3.- La opción Step Into ejecuta una sola instrucción (STEP INTO); la opción Step Over ejecuta hasta la siguiente instrucción de mismo nivel sin introducirse en subrutinas, etc.(STEP OVER), y la opción Step Out ejecuta el programa hasta salir de la rutina enejecución (STEP OUR).4.- Por último, la opción Reset reinicia la ejecución del programa.
1 2 3 4
![Page 45: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/45.jpg)
PROGRAMACIÓN EN ASEMBLERSoftware de Programación
Simulando el programa con MPLAB ® IDE
Para saber lo que ocurre en los registros del microcontrolador, podemos ir a View File Registers
![Page 46: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/46.jpg)
![Page 47: 02.- Programación de Microcontroladores](https://reader038.fdocuments.co/reader038/viewer/2022102523/563dbb39550346aa9aab51a7/html5/thumbnails/47.jpg)
REPERTORIO DE INSTRUCCIONES DEL PIC 16F84; Suma de 2 números en asembler
List P=16f84a ;identificando el PIC