ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO FACULTAD CULTAD DE INFORMÁTICA INFORMÁT ICA Y ELECTRÓNICA ELECTR ÓNICA
MICROCONTROLADORES
INTRODUCCIÓN A LOS MICROCONTROLADORES •
•
artefactos y procesos que realizamos y/o utilizamos utilizamos a diario. Un ejemplo de ello son: una alarma de autos , artefactos domésticos domésticos Celulares, Domótica, Domótica, televisores, microondas, sistemas de control de acceso, ,juguetes, etc.
Aplicaciones como: •
Áreas industriales, telecomunicaciones, telecomunicaciones, Automatización Automatización , Industria automotriz , Entretenimiento, seguridad, entre otras.
Los microcontroladores son una evolución de los microprocesadores, nacidos en la década de los 70's, presentando en la actualidad completas utilidades y aplicaciones, integrándose en un chip, chip, func funcio ione ness elec electr trón ónic icas as que que ante antess eran eran posi posibl bles es por por circ circuit uitos os ex exte terno rnoss separados.
INTRODUCCIÓN A LOS MICROCONTROLADORES •
•
artefactos y procesos que realizamos y/o utilizamos utilizamos a diario. Un ejemplo de ello son: una alarma de autos , artefactos domésticos domésticos Celulares, Domótica, Domótica, televisores, microondas, sistemas de control de acceso, ,juguetes, etc.
Aplicaciones como: •
Áreas industriales, telecomunicaciones, telecomunicaciones, Automatización Automatización , Industria automotriz , Entretenimiento, seguridad, entre otras.
Los microcontroladores son una evolución de los microprocesadores, nacidos en la década de los 70's, presentando en la actualidad completas utilidades y aplicaciones, integrándose en un chip, chip, func funcio ione ness elec electr trón ónic icas as que que ante antess eran eran posi posibl bles es por por circ circuit uitos os ex exte terno rnoss separados.
INTRODUCCIÓN A LOS MICROCONTROLADORES Circui Circuito to integra integrado do que contr controla ola extern extername amente nte los siguie siguiente ntess circui circuito tos: s: memori memoriaa RAM, RAM, EPROM, EPROM, convertido convertidorr Analógico/ Analógico/Digit Digital, al, comunicac comunicación ión serial, módulos temporizad temporizadores, ores, entre otros. Esto en la actualidad se encuentra contenido en un solo circuito integrado de 18, 28 y 40 pines, lo que potencia las posibilidades de aplicaciones.
•
•
•
Se define al microcontrolador microcontrolador como como una microcomputadora microcomputadora MOTIVACION Realizar Realizar un diseño con un microco microcontrol ntrolador ador es una tarea gratifica gratificante, nte, ya que nos permitirá permitirá poner en la práctica nuestras destrezas y habilidades como diseñadores, y ver como realiza las funciones que nosotros les habremos de imponerles.
ARQUITECTURA DE LOS MICROCONTROLADORES •
Un microcontrolador es un computador dedicado, con limitaciones y menos prestaciones. Posee básicamente, las mismas partes que un computador y un controlador lógico programable. Entre ellas tenemos: • • •
CPU (Unidad Central de Procesamiento) ALU (Unidad Lógico - Aritmética) Periféricos Lógica de Control Memoria de Datos
ALU Memoria de Programa
Periféricos
ARQUITECTURA DE LOS MICROCONTROLADORES •
Los microcontroladores son una evolución más práctica de los microprocesadores, y esto se fundamenta en dos aspectos importantes: los microcontroladores albergan en su interior varios circuitos que los microprocesadores no tienen.
•
Se conoce como arquitectura cerrada y arquitectura abierta la arquitectura tradicional del procesador y del microcontrolador Tipo Harvard y de Tipo Von Neumann para los microprocesadores.
Bus de Direcciones Bus de Datos Bus de Control
µP Memoria s
Controladore Controladore s s
Periféricos Periféricos
Microprocesador y su arquitectura abierta
MICROCONTROLADOR Y SU ARQUITECTURA CERRADA
µC
Periféricos
Arquitectura tipo Von Neumann Bus común de direcciones
Memoria
CPU 8
Bus de datos e instrucciones
Instrucciones + Datos
Tipo de Arquitectura Arquitectura Von-Neuman • • •
Un único bus de datos para instrucciones y datos. Las instrucciones del programa y los datos se guardan conjuntamente en una memoria común. Cuando la CPU se dirige a la memoria principal, primero accede a la instrucción y después a los datos necesarios para ejecutarla, esto retarda el funcionamiento.
Arquitectura Harvard El bus de datos y el bus de instrucción están separados. Acceso en paralelo: Cuando se está leyendo una instrucción, la instrucción actual está utilizando el bus de datos.Una vez finalizada la instrucción actual, la siguiente ya está disponible en la CPU. Permite una ejecución más rápida. •
•
ARQUITECTURA
ARQUITECTURA DEL PROCESADOR O CPU •
Según la filosofía de la arquitectura del procesador se puede distinguir entre:
Microcontroladores CISC.
•
Microcontroladores RISC.
•
Microcontroladores SISC.
•
ARQUITECTURA •
COMPUTADORES DE JUEGO DE INSTRUCCIONES COMPLEJO (CISC) -Requieren muchos ciclos de ejecución. -Disponen de mas de 80 instrucciones de maquina.
•
COMPUTADORES DE JUEGO DE INSTRUCCIONES REDUCIDO (RISC) -El repertorio de instrucciones de maquina es muy reducido. -Las instrucciones son simples, Generalmente se ejecuta en un ciclo de máquina, optimizando el software y hardware del UCP.
•
COMPUTADORES DE JUEGO DE INSTRUCCIONES ESPECIFICO (SISC) -Son destinados a aplicaciones muy concretas. -El juego de instrucciones se adaptan a las necesidades de la aplicación prevista.
ARQUITECTURA
Alimentación y Consumo: Tecnología de integración: La cantidad de potencia que disipan es proporcional a su tamaño (Menos calor por transistor implica menos tensión: 3,3 v). Su retraso de propagación es proporcional a su tamaño. Su costo es proporcional al cuadrado de su tamaño. Si se hace un transistor más pequeño, mejora el consumo, velocidad y el costo. •
•
•
•
Características: Tipo de alimentación a baterías: Tecnología CMOS o HCMOS Modo reposo Inhibición de funciones internas. Sleep •
•
•
LENGUAJES DE PROGRAMACIÓN EN MICROCONTROLADORES LENGUAJE MÁQUINA/ENSAMBLADOR Lenguaje Máquina (código máquina) es la representación del programa tal como la entiende el microcontrolador. El lenguaje ensamblador es una representación alfanumérica del lenguaje máquina, lo que facilita su lectura: –Cada instrucción en lenguaje ensamblador se corresponde con una instrucción en código máquina. Un programa en lenguaje ensamblador es muy óptimo y rápido. Se requiere un buen conocimiento de la arquitectura del micro para programar en ensamblador. •
•
•
•
Compiladores Se encargan de traducir todo el programa de alto nivel directamente a código máquina. El código máquina se pasa a la memoria del micro.
–
Los compiladores más conocidos para los microcontroladores son: • • • • •
C, permite el acceso a la estructura del micro (registros, bits). BASIC compilado. PL/M de Intel. ADA para micros de 16 bits o más. FORTH compilado.
MEMORIAS •
En los microcontroladores la memoria de Instrucciones y datos esta integrada en la del propio CHIP.
•
Tiene dos tipo de memoria: volátil (RAM) y no volátil (ROM).
•
Los diseñadores se adaptan a la capacidad del microcontrolador.
PUERTAS DE ENTRADA/SALIDA Son las patitas que posee la cápsula del microcontrolador.
•
Se encuentran agrupadas en Puertos.
•
Las líneas o pines proporcionan el soporte a las señales de entrada, salida y control
•
RELOJ PRINCIPAL •
Todo microcontrolador tiene un oscilador que genera una onda cuadrada de alta frecuencia.
•
Sincronización de todas las operación del sistema.
•
Para seleccionar y estabilizar la frecuencia de trabajo se utilizan componentes exteriores.
Aumentar la frecuencia del reloj, significa que el programa se ejecutara
•
más rápido; aumentado el consumo de energía.
RECURSOS DE UN MICROCONTROLADOR RECURSOS ESPECIALES: Temporizadores.
•
Watchdog.
•
Brownout.
•
Estado de reposo.
•
Conversores Análogo-Digital.
•
Conversores Digital-Análogo
•
PWM.
•
Puertas de comunicación.
•
TEMPORIZADORES •
Se emplean para llevar periodos de tiempo y para llevar la cuenta de acontecimientos que ocurren en el exterior.
•
Para la medida de tiempos se carga un registro con el valor adecuado y a continuación dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj hasta que se desborda y llega a cero.
WATCHDOG O PERRO GUARDIÁN •
•
•
•
Consiste en un temporizador que cuando se desborda y pasa a 0, provoca un reset automático del sistema. Funciona sin el control de un supervisor y de forma continuada las 24 horas del día. Se debe diseñar el programa de trabajo que controla la tarea de forma que se refresque o inicialice al perro guardián antes de que provoque un reset. Si falla o se bloquea el programa,no se refresca al perro guardián y al completar su temporización provocara un reset del sistema.
BROWNOUT O PROTECCION ANTE FALLO DE ALIMENTACION Se trata de un circuito que resetea al microcontrolador cuando el voltaje
•
de alimentación(Vdd)es inferior a un voltaje mínimo. •
Mientras el voltaje de alimentación sea inferior al
brownout, el
dispositivo
a
se
mantendrá
reseteado,
normalmente cuando sobrepase dicho valor.
comenzando
funcionar
ESTADO DE REPOSO O SLEEP
•
• •
Para ahorrar energía(factor clave en los aparatos portátiles),los microcontroladores disponen de una instrucción especial que los pasan al estado de reposo o de bajo consumo en el cual los requerimientos de potencia son mínimos. En dicho estado se detiene el reloj principal y se congelan los circuitos asociados. Al activarse una interrupción ocasionada por el acontecimiento esperado el microcontrolador se despierta y reanuda su trabajo.
PWM O MODULADOR POR ANCHO DE PULSOS •
Son circuitos que proporcionan en su salida impulsos de anchura variable que ofrecen al exterior a través de las patitas del encapsulado.
Con los PWM se pueden controlar algunos tipos de actuadores como
•
por ejemplo los servomotores.
CONVERSORES ANALOGO-DIGITAL Los microcontroladores que incorporan un conversor análogo-digital pueden
•
procesar señales analógicas, tan abundantes en aplicaciones. Suelen disponer de un multiplexor que permite aplicar a la entrada del conversor A/D ,diversas señales analógicas desde las patitas del circuito integrado. Integran diversos tipos de conversores como los Delta-Sigma, Incrementales y
•
de Aproximaciones Sucesivas
PUERTAS DE COMUNICACIÓN •
Se puede dotar al microcontrolador de la posibilidad de comunicarse con otros dispositivos externos, otros buses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otras normas y protocolos.
•
Algunos modelos disponen de recursos entre los que destacan: -UART, USART. - I2C -Puerta Paralela Esclava. -USB. -Otros puertos.
PROGRAMACIÓN DEL MICROCONTROLADOR Se han desarrollado todo tipo de lenguajes para los microcontroladores ,pero los mas usados son: - Ensamblador. - BASIC. - Lenguaje C. Escogido el software a usar, editamos el código de programa línea por línea, con lo cual le indicamos al microcontrolador la secuencia lógica que va ha realizar paso a paso.
•
•
MICROCONTROLADORES PIC DE MICROCHIP SEGMENTACIÓN (PIPELINE) Se conoce como paralelismo implícito, segmenta ó separa las funciones del CPU, producto de la arquitectura Harvard, permitiéndole realizar en etapas, instrucciones diferentes en cada una de ellas y operar varias a la vez. Aumenta el rendimiento del CPU, lo que hace que sus operaciones y procesamiento sean más rápidas que la gran mayoría de los otros microcontroladores. INFORMACIÓN AMPLIAMENTE DIFUNDIDA Y DE FÁCIL ACCESO La ventajas de este fabricante es que proporciona libre acceso a las hojas técnicas de sus diferentes componentes, así como software para programación, proyectos propuestos, tutoriales. www.microchip.com COMPATIBILIDAD Existen productos de software y hardware, que no pertenecen a Microchip, pero que son totalmente compatibles ya que podemos descargar programas adicionales y realizar circuitos para programarlos a costo reducido •
CARACTERÍSTICAS DE LOS MICROCONTROLADORES ARQUITECTURA INTERNA DE UN MICROCONTROLADOR PIC Se dividen en tres grandes áreas: 1) Núcleo Estas son las características básicas para la operatividad del microcontrolador. Están constituidas por: Oscilador , Reset , CPU , ALU Memoria no volátil para programa (ROM) Memoria de lectura y escritura para datos (RAM) Memoria programable para datos (EEPROM/FLASH) Instrucciones 2) Periféricos Se tiene la diferencia con los microprocesadores, permite recibir y enviar datos que se toman del mundo exterior. Entradas/Salidas de utilidad general Módulo de captura, comparación y PWM Comunicación serial Comunicación paralela Comparadores Convertidores Analógico/Digital • • • • •
• • • • • •
CARACTERÍSTICAS DE LOS MICROCONTROLADORES Características Especiales ó Recursos Auxiliares Contribuyen a reducir el costo del sistema, incrementan la flexibilidad de diseño y brindan mayor fiabilidad y se tiene: •
Bits de configuración
•
Reset de encendido
•
Temporizador WATCHDOG
•
Modo reposo ó de bajo consumo
•
Oscilador RC interno
•
Programación serie en el propio circuito
•
Interrupciones
•
Temporizadores (Timer's)
TIPOS DE OSCILADORES •
•
•
•
HS: (High Speed Crystall Resonador): Alta velocidad de 20 MHz a 4 MHz. XT: (Crystall//Resonador): Estándar de 4 MHZ máximo. LP: (Low Power Crystall): Bajo consumo, 200 KHz a 30 KHz. RC: (Resistence/Capacitor): Baja precisión, Tiene una tabla asociada a l os valores de R y C. Muy poco uso. 200 Hz a 32 Hz.
31/10/2016
FRECUENCIA DE FUNCIONAMIENTO ALGUNOS CONCEPTOS Un ciclo de instrucción tarda en ejecutarse cuatro períodos de reloj. Todas las instrucciones del PIC se realizan en un ciclo de instrucción, exceptuando las de "salto" que tardan dos ciclos. Los impulsos de reloj entran por FOSC1/CLKIN y se dividen en cuatro señales internamente, dando lugar a Q1, Q2, Q3 y Q4. El ciclo de instrucción se logra al realizarse las siguientes operaciones: Q1 incrementa el contador de programa (PC) Q4 busca el código de la instrucción en la memoria del programa y se carga en el registro de instrucciones Q2 - Q3 decodifican y ejecutan la instrucción respectiva • •
•
•
• •
•
FRECUENCIA DE FUNCIONAMIENTO
CIRCUITOS DE RESET
31/10/2016
32
CIRCUITOS DE APOYO (INTRODUCEN DATOS AL MICROCONTROLADOR) Pulsadores e interruptores
31/10/2016
CIRCUITOS DE APOYO (SACAN DATOS DEL MICROCONTROLADOR) Visualización
Con Display
CIRCUITOS DE APOYO (SACAN DATOS DEL MICROCONTROLADOR)
Con Relé
Con optoacoplador
PROGRAMACION DEL MICROCONTROLADOR
PRINCIPALES FABRICANTES DE MICROCONTROLADORES •
MOTOROLA.
•
MICROCHIP.
•
NEC.
•
HITACHI.
•
ST-MICROELECTRONICS.
•
INFINEON.
•
MITSUBISHI.
•
PHILIPS.
•
TOSHIBA.
•
ATMEL.
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO FACULTAD DE INFORMÁTICA Y ELECTRÓNICA
MICROCONTROLADORES
INTRODUCCIÓN A LOS MICROCONTROLADORES •
•
artefactos y procesos que realizamos y/o utilizamos a diario. Un ejemplo de ello son: una alarma de autos , artefactos domésticos Celulares, Domótica, televisores, microondas, sistemas de control de acceso, ,juguetes, etc.
Aplicaciones como: •
Áreas industriales, telecomunicaciones, Automatización , Industria automotriz , Entretenimiento, seguridad, entre otras.
Los microcontroladores son una evolución de los microprocesadores, nacidos en la década de los 70's, presentando en la actualidad completas utilidades y aplicaciones, integrándose en un chip, funciones electrónicas que antes eran posibles por circuitos externos separados.
INTRODUCCIÓN A LOS MICROCONTROLADORES Circuito integrado que controla externamente los siguientes circuitos: memoria RAM, EPROM, convertidor Analógico/Digital, comunicación serial, módulos temporizadores, entre otros. Esto en la actualidad se encuentra contenido en un solo circuito integrado de 18, 28 y 40 pines, lo que potencia las posibilidades de aplicaciones.
•
•
•
Se define al microcontrolador como una microcomputadora MOTIVACION Realizar un diseño con un microcontrolador es una tarea gratificante, ya que nos permitirá poner en la práctica nuestras destrezas y habilidades como diseñadores, y ver como realiza las funciones que nosotros les habremos de imponerles.
ARQUITECTURA DE LOS MICROCONTROLADORES •
Un microcontrolador es un computador dedicado, con limitaciones y menos prestaciones. Posee básicamente, las mismas partes que un computador y un controlador lógico programable. Entre ellas tenemos: • • •
CPU (Unidad Central de Procesamiento) ALU (Unidad Lógico - Aritmética) Periféricos Lógica de Control Memoria de Datos
ALU Memoria de Programa
Periféricos