SlideShare uma empresa Scribd logo
1 de 15
Programacion y simulacion de un microcontrolador . t.s.u oscar garcia [email_address]
Lenguajes de Programación Medio necesarios para la comunicación entre el usuario y la maquina Clasificación de los Lenguajes de Programación: Los lenguajes de programación pueden ser de dos tipos, visuales y escritos, Los visuales admiten estructurar el programa por medio de símbolos gráficos,   , planos esquemáticos y diagramas de bloques. Los escritos son listados de  sentencias que describen las funciones a ejecutar.   Niveles de los Lenguajes Los lenguajes de programación de sistemas basados en microprocesadores,  como es el caso de los PLC, se clasifican en niveles; al microprocesador le  corresponde el nivel más bajo, y al usuario el más alto.
Lenguajes de Bajo Nivel: Lenguaje de Máquina:   Código binario encargado de la ejecución del programa directamente en el procesador. El lenguaje maquina es difícil de utilizar por el hombre ya que se aleja de su forma natural de expresarse, por esto utiliza el lenguaje ensamblador, que es la forma de expresar las  Instrucciones de una forma mas natural al hombre y que, sin embargo, es muy cercana al microcontrolador porque cada una de sus instrucciones se corresponde con otra en código maquina que el microcontrolador es capaz de interpretar. Lenguajes de Alto Nivel:   Se basan en la construcción de sentencias orientadas a la estructura lógica de lo deseado; una sentencia de lenguaje de alto nivel representa varias de bajo nivel; cabe la posibilidad que las sentencias de un lenguaje de alto nivel no cubran todas las instrucciones del lenguaje de bajo nivel, lo que limita el control sobre la máquina. Para que un lenguaje de alto nivel sea legible por el sistema, debe traducirse a lenguaje ensamblador y posteriormente a lenguaje de máquina.
Lenguaje Ensamblador:  Lenguaje sintético de sentencias que representan cada una de las instrucciones que puede ejecutar el microcontrolador. Una vez diseñado un programa en lenguaje ensamblador es necesario, para cargarlo en el sistema, convertirlo o compilarlo a lenguaje de máquina. Los programadores de lenguajes de bajo nivel deben estar especializados en microprocesadores y demás circuitos que conforman el sistema   El lenguaje ensamblador utiliza mnemónico que es una palabra que sustituye a un código de operación  (Lenguaje de maquina), con lo cual resulta más fácil  la programación Así. por ejemplo: para ordenar al microcontrolador PIC16F84:  "sume 58 al Registro w y guarda el resultado en el mismo registro  W",  en lenguaje ensamblador sería  "addlw d''58"  que es mucho mas simple que "1111100011l010“ del lenguaje de maquina.
Lenguaje a utilizar: ASEMBLER. Ensamblador: MPAS Programa de simulación: Proteus El programa ensamblador( MPAS)  es un software que se encarga de traducir los neumónicos y símbolos alfanuméricos del programa escrito en ensamblador por el usuario a código de máquina, para que pueda ser interpretado y ejecutado por el microcontrolador. Microcontrolador: 16F84A El programa escrito en lenguaje ensamblador recibe la denominación de código fuente, archivo fuente o fichero fuente. Suele tener la extensión *.asm. El archivo debe ser traducido a código maquina, de lo cual  se  encarga el programa ensamblador. La mayoría de los ensambladores proporcionan a su salida un fichero que suele tener la extensión *.hex. Este fichero puede ser grabado en la memoria de programa mediante la utilización de un grabador de microcontroladores. Proteus:es un programa para simular circuitos electrónicos complejos integrando, inclusive desarrollos realizados con microcontroladores de varios tipos. Presenta una filosofía de trabajo semejante al SPICE
Microcontrolador: PIC16F84A ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Algunas de sus caracteristicas
Tras el ensamblado del fichero fuente (ASM) se genera una serie de ficheros de los cuales los mas importante son: Fichero ejecutable o hexadecimal: tiene extensión . Hex y contiene el  Programa que será grabado al microcontrolador en código maquina. Fichero de errores: tiene extensión . Err contiene los errores producidos  Durante el proceso de ensamblado. Fichero listable: posee extencion .lst que contiene toda la información del  Programa, código fuente, codigo maquina, direccion de cada instrucción,  Errores producidos, ETC…
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo de programa para activar un led.
TAB ORG  00 Directiva del lenguaje ORDEN ORIGEN INICIO GOTO  INICIO ORG 05 ;Programa para activar leds Los comentarios se realizan después de punto y coma BSF  ESTADO,05H Etiqueta Máx. 32 caracteres Código ( mnemonico) Operando Registro en la posición 03H ;Cambio a banco 1 Comentario END TAB Indica el final del programa ESTADO    EQU  03H LAS variable se definen antes del origen 00 Y permiten hacer la equivalencia de una  Posición con un nombre. Destino 1ª  2ª  3ª  4ª columna List P=PIC16F84A Microcontrolador utilizado CONSTANTE  EQU  b’00001111’
Para poder programar debes tener claro como funciona lo que vas a controlar Con uno enciende el Led Y con cero se apaga. 5V 160
inicio Conf de variables Y constantes Conf de puertos Apaga todos los LEDS Tecla presionada ? No si Desplaza led a la  derecha Tecla presionada ? No si Desplaza led a la  izquierda Tecla presionada ? No si Enciende led Desde el centro Tecla presionada ? No si Desplaza led a la  izquierda Tecla presionada ? No si Desplaza led apagado A la derecha Tecla presionada ? No si
Mueva el numero b 00010000 al puerto B Realice retardo Tecla presionada ? Mueva el numero b 00001000 al puerto B Realice retardo si no Tecla presionada ? si no Cambia rutina Cambia rutina Mueva el numero b 00000100 al puerto B Realice retardo Tecla presionada ? Mueva el numero b 00000010 al puerto B Realice retardo si no Tecla presionada ? si no Cambia rutina Cambia rutina Mueva el numero b 00000001 al puerto B Realice retardo Tecla presionada ? si no Cambia rutina 10h 8h 4h 2h 1h
 
Un 0 cero corresponde a configurar el pin como salida en tanto que un 1 uno corresponde a configurarlo como entrada,.

Mais conteúdo relacionado

Mais procurados

Microcontroladores ASM
Microcontroladores ASMMicrocontroladores ASM
Microcontroladores ASMdave
 
C++ para microcontroladores y aplicación práctica
C++ para microcontroladores y aplicación prácticaC++ para microcontroladores y aplicación práctica
C++ para microcontroladores y aplicación prácticaGerardo C
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladoresabemen
 
Microcontroladores PIC
Microcontroladores PICMicrocontroladores PIC
Microcontroladores PICSohar Carr
 
Qué es un microcontrolador
Qué es un microcontroladorQué es un microcontrolador
Qué es un microcontroladorDaysi Morante
 
Microcontroladores tabla de referencia
Microcontroladores tabla de referenciaMicrocontroladores tabla de referencia
Microcontroladores tabla de referenciaRuderocker Billy
 
Presentacion pic 16f887 y 18f4550
Presentacion pic 16f887 y 18f4550 Presentacion pic 16f887 y 18f4550
Presentacion pic 16f887 y 18f4550 Alejandra Ruiz
 
Familia De Los Microcontroladores
Familia De Los MicrocontroladoresFamilia De Los Microcontroladores
Familia De Los Microcontroladoresceiv
 
Microcontroladores
MicrocontroladoresMicrocontroladores
MicrocontroladoresJaque Beciez
 
programacion con microcontrolador pic 16f84
programacion con microcontrolador pic 16f84programacion con microcontrolador pic 16f84
programacion con microcontrolador pic 16f84guestf09168b
 
Sesión 3 introduccion a microcontroladores
Sesión 3 introduccion a microcontroladoresSesión 3 introduccion a microcontroladores
Sesión 3 introduccion a microcontroladoresDidier Tec
 

Mais procurados (20)

Microcontroladores ASM
Microcontroladores ASMMicrocontroladores ASM
Microcontroladores ASM
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
C++ para microcontroladores y aplicación práctica
C++ para microcontroladores y aplicación prácticaC++ para microcontroladores y aplicación práctica
C++ para microcontroladores y aplicación práctica
 
Curso de microcontroladores pic18 f4550
Curso de microcontroladores pic18 f4550Curso de microcontroladores pic18 f4550
Curso de microcontroladores pic18 f4550
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
Microcontroladores PIC
Microcontroladores PICMicrocontroladores PIC
Microcontroladores PIC
 
Microcontroladores PIC USS
Microcontroladores PIC  USSMicrocontroladores PIC  USS
Microcontroladores PIC USS
 
PROGRAMACION DE MICROCONTROLADOR
PROGRAMACION DE MICROCONTROLADORPROGRAMACION DE MICROCONTROLADOR
PROGRAMACION DE MICROCONTROLADOR
 
Qué es un microcontrolador
Qué es un microcontroladorQué es un microcontrolador
Qué es un microcontrolador
 
Familia De Los Microcontroladores Pic
Familia De Los Microcontroladores PicFamilia De Los Microcontroladores Pic
Familia De Los Microcontroladores Pic
 
como programar un pic
como  programar un piccomo  programar un pic
como programar un pic
 
Microcontroladores pic
Microcontroladores picMicrocontroladores pic
Microcontroladores pic
 
Microcontroladores tabla de referencia
Microcontroladores tabla de referenciaMicrocontroladores tabla de referencia
Microcontroladores tabla de referencia
 
Presentacion pic 16f887 y 18f4550
Presentacion pic 16f887 y 18f4550 Presentacion pic 16f887 y 18f4550
Presentacion pic 16f887 y 18f4550
 
Familia De Los Microcontroladores
Familia De Los MicrocontroladoresFamilia De Los Microcontroladores
Familia De Los Microcontroladores
 
Registros del Pic 16F84
Registros del Pic 16F84Registros del Pic 16F84
Registros del Pic 16F84
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
El PIC16F84
El PIC16F84El PIC16F84
El PIC16F84
 
programacion con microcontrolador pic 16f84
programacion con microcontrolador pic 16f84programacion con microcontrolador pic 16f84
programacion con microcontrolador pic 16f84
 
Sesión 3 introduccion a microcontroladores
Sesión 3 introduccion a microcontroladoresSesión 3 introduccion a microcontroladores
Sesión 3 introduccion a microcontroladores
 

Destaque

Microcontrolador pic16 f84, desarrollo de proyectos ao
Microcontrolador pic16 f84, desarrollo de proyectos aoMicrocontrolador pic16 f84, desarrollo de proyectos ao
Microcontrolador pic16 f84, desarrollo de proyectos aohector8764
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesCarlos Tovar
 
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMicrocontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMiguel Angel Corona Lòpez
 
Tutorial proton ide plus part 1
Tutorial proton ide plus part 1Tutorial proton ide plus part 1
Tutorial proton ide plus part 1dar851112
 
شهر رمضان
شهر رمضانشهر رمضان
شهر رمضانhalaelshal
 
arquitectura de un microcontrolador
arquitectura de un microcontroladorarquitectura de un microcontrolador
arquitectura de un microcontroladorPablo Ramos Garcia
 
Arquitectura del microcontrolador
Arquitectura del microcontroladorArquitectura del microcontrolador
Arquitectura del microcontroladorJose Chacho
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores picJonathan Ruiz de Garibay
 
Arduino - ¿Que posibilidades nos ofrece?
Arduino - ¿Que posibilidades nos ofrece?Arduino - ¿Que posibilidades nos ofrece?
Arduino - ¿Que posibilidades nos ofrece?Ricardo Vega Alonso
 
Plc (presentacio)
Plc (presentacio)Plc (presentacio)
Plc (presentacio)Gissell03
 
Gea fuente de_voltaje
Gea fuente de_voltajeGea fuente de_voltaje
Gea fuente de_voltajeMarco Silva
 
Programador usb 2011_pickit2 modificado
Programador usb 2011_pickit2 modificadoProgramador usb 2011_pickit2 modificado
Programador usb 2011_pickit2 modificadoUniversidad mariana
 

Destaque (20)

Microcontrolador pic16 f84, desarrollo de proyectos ao
Microcontrolador pic16 f84, desarrollo de proyectos aoMicrocontrolador pic16 f84, desarrollo de proyectos ao
Microcontrolador pic16 f84, desarrollo de proyectos ao
 
Programación PIC16F84A
Programación PIC16F84AProgramación PIC16F84A
Programación PIC16F84A
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicaciones
 
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMicrocontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
 
Tutorial proton ide plus part 1
Tutorial proton ide plus part 1Tutorial proton ide plus part 1
Tutorial proton ide plus part 1
 
Macrocar talavera S.L
Macrocar talavera S.LMacrocar talavera S.L
Macrocar talavera S.L
 
شهر رمضان
شهر رمضانشهر رمضان
شهر رمضان
 
arquitectura de un microcontrolador
arquitectura de un microcontroladorarquitectura de un microcontrolador
arquitectura de un microcontrolador
 
Arquitectura del microcontrolador
Arquitectura del microcontroladorArquitectura del microcontrolador
Arquitectura del microcontrolador
 
Manual básico WinPic800
Manual básico WinPic800Manual básico WinPic800
Manual básico WinPic800
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic
 
Catálogo ipac
Catálogo ipacCatálogo ipac
Catálogo ipac
 
Manual Ic Prog
Manual Ic ProgManual Ic Prog
Manual Ic Prog
 
Arduino - ¿Que posibilidades nos ofrece?
Arduino - ¿Que posibilidades nos ofrece?Arduino - ¿Que posibilidades nos ofrece?
Arduino - ¿Que posibilidades nos ofrece?
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
Matriz de led
Matriz de ledMatriz de led
Matriz de led
 
Plc (presentacio)
Plc (presentacio)Plc (presentacio)
Plc (presentacio)
 
Fundamentos de los Microcontroladores
Fundamentos de los MicrocontroladoresFundamentos de los Microcontroladores
Fundamentos de los Microcontroladores
 
Gea fuente de_voltaje
Gea fuente de_voltajeGea fuente de_voltaje
Gea fuente de_voltaje
 
Programador usb 2011_pickit2 modificado
Programador usb 2011_pickit2 modificadoProgramador usb 2011_pickit2 modificado
Programador usb 2011_pickit2 modificado
 

Semelhante a Microcontrolador PIC16F84A

Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensambladorjuan1993are
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensambladorjuan1993are
 
02- Clase 1 - UD2 - Lenguajes.pdf
02- Clase 1 - UD2 -  Lenguajes.pdf02- Clase 1 - UD2 -  Lenguajes.pdf
02- Clase 1 - UD2 - Lenguajes.pdfNancyHerrera88
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)tonytenorio2
 
Lenguaje Ensamblador
Lenguaje Ensamblador Lenguaje Ensamblador
Lenguaje Ensamblador irana piñero
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00Car_00_01
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensambladorCar_00_01
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07Carlos Pastorino
 
Electronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfElectronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfWalterCuellarFierro
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadorasYessicafragoso
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]Jalil Segura
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]Jalil Segura
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacionJohan95
 

Semelhante a Microcontrolador PIC16F84A (20)

Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
02- Clase 1 - UD2 - Lenguajes.pdf
02- Clase 1 - UD2 -  Lenguajes.pdf02- Clase 1 - UD2 -  Lenguajes.pdf
02- Clase 1 - UD2 - Lenguajes.pdf
 
Mipag web
Mipag webMipag web
Mipag web
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)
 
Programación de microcontrolador
Programación de microcontroladorProgramación de microcontrolador
Programación de microcontrolador
 
Lenguaje Ensamblador
Lenguaje Ensamblador Lenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07
 
Electronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfElectronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdf
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadoras
 
Ensamblador
EnsambladorEnsamblador
Ensamblador
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
efrain ruiz fernandez lenjuaje
efrain ruiz fernandez lenjuajeefrain ruiz fernandez lenjuaje
efrain ruiz fernandez lenjuaje
 

Último

Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y maslida630411
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 

Último (20)

Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y mas
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 

Microcontrolador PIC16F84A

  • 1. Programacion y simulacion de un microcontrolador . t.s.u oscar garcia [email_address]
  • 2. Lenguajes de Programación Medio necesarios para la comunicación entre el usuario y la maquina Clasificación de los Lenguajes de Programación: Los lenguajes de programación pueden ser de dos tipos, visuales y escritos, Los visuales admiten estructurar el programa por medio de símbolos gráficos, , planos esquemáticos y diagramas de bloques. Los escritos son listados de sentencias que describen las funciones a ejecutar. Niveles de los Lenguajes Los lenguajes de programación de sistemas basados en microprocesadores, como es el caso de los PLC, se clasifican en niveles; al microprocesador le corresponde el nivel más bajo, y al usuario el más alto.
  • 3. Lenguajes de Bajo Nivel: Lenguaje de Máquina: Código binario encargado de la ejecución del programa directamente en el procesador. El lenguaje maquina es difícil de utilizar por el hombre ya que se aleja de su forma natural de expresarse, por esto utiliza el lenguaje ensamblador, que es la forma de expresar las Instrucciones de una forma mas natural al hombre y que, sin embargo, es muy cercana al microcontrolador porque cada una de sus instrucciones se corresponde con otra en código maquina que el microcontrolador es capaz de interpretar. Lenguajes de Alto Nivel: Se basan en la construcción de sentencias orientadas a la estructura lógica de lo deseado; una sentencia de lenguaje de alto nivel representa varias de bajo nivel; cabe la posibilidad que las sentencias de un lenguaje de alto nivel no cubran todas las instrucciones del lenguaje de bajo nivel, lo que limita el control sobre la máquina. Para que un lenguaje de alto nivel sea legible por el sistema, debe traducirse a lenguaje ensamblador y posteriormente a lenguaje de máquina.
  • 4. Lenguaje Ensamblador: Lenguaje sintético de sentencias que representan cada una de las instrucciones que puede ejecutar el microcontrolador. Una vez diseñado un programa en lenguaje ensamblador es necesario, para cargarlo en el sistema, convertirlo o compilarlo a lenguaje de máquina. Los programadores de lenguajes de bajo nivel deben estar especializados en microprocesadores y demás circuitos que conforman el sistema El lenguaje ensamblador utiliza mnemónico que es una palabra que sustituye a un código de operación (Lenguaje de maquina), con lo cual resulta más fácil la programación Así. por ejemplo: para ordenar al microcontrolador PIC16F84: &quot;sume 58 al Registro w y guarda el resultado en el mismo registro W&quot;, en lenguaje ensamblador sería &quot;addlw d''58&quot; que es mucho mas simple que &quot;1111100011l010“ del lenguaje de maquina.
  • 5. Lenguaje a utilizar: ASEMBLER. Ensamblador: MPAS Programa de simulación: Proteus El programa ensamblador( MPAS) es un software que se encarga de traducir los neumónicos y símbolos alfanuméricos del programa escrito en ensamblador por el usuario a código de máquina, para que pueda ser interpretado y ejecutado por el microcontrolador. Microcontrolador: 16F84A El programa escrito en lenguaje ensamblador recibe la denominación de código fuente, archivo fuente o fichero fuente. Suele tener la extensión *.asm. El archivo debe ser traducido a código maquina, de lo cual se encarga el programa ensamblador. La mayoría de los ensambladores proporcionan a su salida un fichero que suele tener la extensión *.hex. Este fichero puede ser grabado en la memoria de programa mediante la utilización de un grabador de microcontroladores. Proteus:es un programa para simular circuitos electrónicos complejos integrando, inclusive desarrollos realizados con microcontroladores de varios tipos. Presenta una filosofía de trabajo semejante al SPICE
  • 6.
  • 7. Tras el ensamblado del fichero fuente (ASM) se genera una serie de ficheros de los cuales los mas importante son: Fichero ejecutable o hexadecimal: tiene extensión . Hex y contiene el Programa que será grabado al microcontrolador en código maquina. Fichero de errores: tiene extensión . Err contiene los errores producidos Durante el proceso de ensamblado. Fichero listable: posee extencion .lst que contiene toda la información del Programa, código fuente, codigo maquina, direccion de cada instrucción, Errores producidos, ETC…
  • 8.
  • 9. Ejemplo de programa para activar un led.
  • 10. TAB ORG 00 Directiva del lenguaje ORDEN ORIGEN INICIO GOTO INICIO ORG 05 ;Programa para activar leds Los comentarios se realizan después de punto y coma BSF ESTADO,05H Etiqueta Máx. 32 caracteres Código ( mnemonico) Operando Registro en la posición 03H ;Cambio a banco 1 Comentario END TAB Indica el final del programa ESTADO EQU 03H LAS variable se definen antes del origen 00 Y permiten hacer la equivalencia de una Posición con un nombre. Destino 1ª 2ª 3ª 4ª columna List P=PIC16F84A Microcontrolador utilizado CONSTANTE EQU b’00001111’
  • 11. Para poder programar debes tener claro como funciona lo que vas a controlar Con uno enciende el Led Y con cero se apaga. 5V 160
  • 12. inicio Conf de variables Y constantes Conf de puertos Apaga todos los LEDS Tecla presionada ? No si Desplaza led a la derecha Tecla presionada ? No si Desplaza led a la izquierda Tecla presionada ? No si Enciende led Desde el centro Tecla presionada ? No si Desplaza led a la izquierda Tecla presionada ? No si Desplaza led apagado A la derecha Tecla presionada ? No si
  • 13. Mueva el numero b 00010000 al puerto B Realice retardo Tecla presionada ? Mueva el numero b 00001000 al puerto B Realice retardo si no Tecla presionada ? si no Cambia rutina Cambia rutina Mueva el numero b 00000100 al puerto B Realice retardo Tecla presionada ? Mueva el numero b 00000010 al puerto B Realice retardo si no Tecla presionada ? si no Cambia rutina Cambia rutina Mueva el numero b 00000001 al puerto B Realice retardo Tecla presionada ? si no Cambia rutina 10h 8h 4h 2h 1h
  • 14.  
  • 15. Un 0 cero corresponde a configurar el pin como salida en tanto que un 1 uno corresponde a configurarlo como entrada,.