Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores SISTEMAS ELECTRÓNICOS DIGITALES BLOQUE 3 MICROCONTROLADORES (PARTE 1) DEFINICIÓN,CLASIFICACIÓN Y CARACTERÍSTICAS GENERALES Enrique Mandado Pérez María José Moure Rodríguez Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores DEFINICIÓN DE MICROCONTROLADOR Circuito integrado digital monolítico que contiene todos los elementos de un procesador digital secuencial síncrono programable de arquitectura Harvard o Princeton (Von Neumann). Se le suele denominar también microcomputador integrado o empotrado (Embedded processor or Embedded controller) y está especialmente orientado a la ejecución de tareas de control y comunicaciones. PRINCIPALES CARACTERÍSTICAS - Por su pequeño tamaño permiten empotrar un procesador programable en muchos productos industriales. - Por su coste reducido y su consumo de energía y velocidad adaptables, son apropiados para numerosas aplicaciones. - Poseen mecanismos de seguridad Fotografía del microcontrolador de funcionamiento (Safety) y proporcionan 8748 de Intel protección del equipo electrónico contra copias y modificaciones del programa no autorizadas (Security). Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES Televisor Microondas Robot Microcontrolador Lavadora Automóvil Impresora Campos de aplicación de los microcontroladores (Microcontrollers) en la década de 1980. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES Nuevas aplicaciones de los microcontroladores (Microcontrollers) a partir de mediados de la década de 1990. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS UNIDAD OPERATIVA MEMORIA SISTEMA Resultados SECUENCIAL Datos externos SÍNCRONO ALU G Señales de control Esquema de bloques de un procesador digital secuencial síncrono Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA HARVARD PRINCIPALES CARACTERÍSTICAS G - Su unidad de control es un sistema secuencial síncrono que posee una memoria de instrucciones no volátil (EPROM, FLASH) que contiene las direcciones de la memoria de datos (RAM). Esto hace que el número de bits de las posiciones de la memoria de datos y de la memoria de instrucciones puedan ser diferentes. Poseen dos barras de direcciones diferentes lo cual complica el sistema físico, en especial si UNIDAD DE CONTROL el procesador no se coloca en CTR un único circuito integrado. M1 UNIDAD OPERATIVA Variables de control E/S MEMORIA - Son capaces, teóricamente, de C2/1+ VOLÁTIL Variables de dirección RAM realizar una operación y 0 A tomar una decisión en función 2 -1 MEMORIA n n REGISTRO NO 1,2D de su resultado en un solo VOLÁTIL ciclo del generador de impulsos y en la práctica en un máximo de dos. MUX k - Para que sean programables 0 G 2 -1 0 el circuito combinacional de la UNIDAD Resultado 1 unidad de control debe ser ARITMÉTICA Y LÓGICA programable. m k Datos Esquema de bloques de un procesador digital secuencial síncrono de arquitectura Harvard Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA HARVARD Indicadores (Flags) Barra de direcciones de la memoria de datos UNIDAD OPERATIVA MEMORIA DE DATOS UNIDAD DE Dirección de escritura/lectura RAM n2 n2 RAM 1A Dirección de lectura 2A Señal de control C3 0 2 n 2 -1 0 2n 2 -1 A CONTROL UNIDAD ARITMÉTICA G Barra de datos n1 Terminales de entrada 1A n1 1A n1 2A Esquema de bloques básico de un procesador de arquitectura Harvard con memoria de acceso doble en lectura y escritura simultánea Memoria de acceso doble en lectura y escritura simultánea Terminales de salida Terminales de salida Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores TIPOS DE MICROCONTROLADORES MICROCONTROLADOR DE ARQUITECTURA HARVARD EJEMPLO DE MICOCONTROLADOR DE ARQUITECTURA HARVARD (CIDM NORMALIZADO PROGRAMABLE DE ARQUITECTURA FIJA) Microcontrolador PIC16C5X Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA VON NEUMANN UNIDAD DE MEMORIA DE DATOS E INSTRUCCIONES UNIDAD E1 Búsqueda de instrucciones E2 Ejecución de instrucciones Datos DE Resultados CONTROL UNIDAD ARITMÉTICA G Y LÓGICA Información: Datos o instrucciones Señales de control Esquema de bloques de un procesador digital de arquitectura Von Neumann (Princeton) Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA VON NEUMANN PRINCIPALES CARACTERÍSTICAS - Su unidad de control es un sistema secuencial síncrono que posee solamente dos estados (estado de búsqueda y estado de ejecución de instrucciones) lo cual permite que la memoria activa de datos (RAM) y la memoria de instrucciones (EPROM, FLASH) se comuniquen con la unidad de control a través de una barra única. Esto hace que el número de bits de las posiciones de la memoria de datos y Barra de dirección de la memoria de instrucciones sean idénticos. MEMORIA MEMORIA - Poseen una barra de direcciones ACTIVA PASIVA (DATOS) (INSTRUCCIONES) única lo cual simplifica el sistema UNIDAD físico. DE Barra de datos CONTROL - No son capaces de realizar una REGISTRO ACUMULADOR operación y tomar una decisión en Datos Resultados UNIDAD función de su resultado en un externos ARITMÉTICA G máximo de dos ciclos del Y LÓGICA generador de impulsos y por ello son básicamente más lentos que los de arquitectura Harvard. - Son programables aunque el circuito combinacional de la Información: Datos o instrucciones unidad de control sea cableado. Señales de selección (dirección) y de control Esquema de bloques de un procesador digital de arquitectura Princeton con memoria de datos y memoria de instrucciones separadas Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADOR DE ARQUITECTURA VON NEUMANN Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores EJEMPLO DE MICROCONTROLADOR DE ARQUITECTURA VON NEUMANN Diagrama de bloques simplificado del microcontrolador 8051 Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores EJEMPLO DE MICROCONTROLADOR DE ARQUITECTURA VON NEUMANN Diagrama de bloques ampliado del microcontrolador 8051 Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores EJEMPLO DE MICROCONTROLADOR BASADO EN EL 8051: EZ-USB FX2 DE CYPRESS Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS INTERFACES Los procesadores digitales secuenciales síncronos realizan un proceso de información, mediante su unidad operativa, con datos que son suministrados por subsistemas externos que reciben la denominación de periféricos (Peripherals). Los periféricos son sistemas que se caracterizan en general por: • Suministran o deben recibir la información en un código diferente del binario natural, el BCD natural o el ASCII, en los que procesador realiza sus operaciones. Por ejemplo una pantalla alfanumérica visualiza la información alfanumérica en un código de 5 x 7 puntos y el computador la proporciona en el código ASCII. • Muchas veces necesitan que se les proporcione periódicamente la información a una velocidad determinada, en el caso de un periférico de salida, o la proporcionan en cualquier instante, de forma asíncrona en relación con el generador de impulsos del procesador. • Proporcionan señales analógicas o deben recibir señales analógicas. Las primeras deben ser convertidas en analógicas y las segundas generadas a partir de las digitales. Conclusión: NECESIDAD DE UN CIRCUITO QUE ACOPLE EL PERIFÉRICO AL PROCESADOR DIGITAL, DENOMINADO INTERFAZ (INTERFACE) PORQUE ESTÁ SITUADO EN TRE DOS CARAS. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA HARVARD CON PERIFÉRICOS Indicadores (Flags) Barra de direcciones de la memoria de datos UNIDAD OPERATIVA MEMORIA DE DATOS UNIDAD DE A RAM CONTROL UNIDAD ARITMÉTICA G Barra de datos INTERFAZ 1 PERIFÉRIC0 1 INTERFAZ N PERIFÉRICO N Barra de direcciones Esquema de bloques de un procesador de arquitectura Harvard que posee interfaces de acoplamiento con periféricos Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS PROCESADOR DE ARQUITECTURA VON NEUMANN CON PERIFÉRICOS UNIDAD Barra de datos CENTRAL DE PROCESO G Barra de direcciones UNIDAD DE MEMORIA DE ACCESO ALEATORIO INTERFAZ 1 PERIFÉRICO 1 INTERFAZ N PERIFÉRICO N Esquema de bloques de un procesador de arquitectura Princeton que posee interfaces de acoplamiento con periféricos Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ - Difieren de un periférico a otro. - Su complejidad depende de la forma de repartir las tareas de intercambio de información con el periférico entre el programa (software) del procesador y el sistema físico (hardware) del propio interfaz (Alternativa hardware-software). - Todos los circuitos de interfaz están asociados a dos conceptos interrelacionados que son: - La forma de realizar la transferencia de información. - La forma de controlar la transferencia. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ Circuito de selección de periférico Barra de datos PROCESADOR DIGITAL A otros periféricos Barra de direcciones Señales de control INTERFAZ CIRCUITO DE CIRCUITO DE SELECCIÓN DE INTERFAZ PERIFÉRICO PERIFÉRICO Señal de transferencia Detecta la combinación binaria que lo identifica. Decide con cual de las diferentes interfaces conectadas a la barra de datos ejecuta la transferencia de información. Su salida se activa sólo cuando a su entrada se aplica la combinación binaria correspondiente al periférico. Circuito de interfaz propiamente dicho Barra de datos PROCESADOR DIGITAL A otros periféricos Barra de direcciones Señal de control INTERFAZ DECODIF. X/Y 0 1 2 0 1 2 CIRCUITO DE INTERFAZ n-1 G 2n-1 A otros circuitos de interfaz Diagrama de bloques del circuito de interfaz entre un procesador y un periférico a) General; b) Con un decodificador. PERIFÉRICO Ejecuta las acciones adecuadas para que se lleve a cabo la transferencia . Su complejidad depende del tipo de periférico y del tiempo de que dispone el procesador para realizar tareas de acoplamiento. Hay unos recursos mínimos que todos los interfaces deben tener, que se conocen bajo la denominación de: - Puertos paralelo - Puertos serie Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: PUERTO PARALELO 8 Barra de datos Puerto paralelo (Parallel port) PROCESADOR Recibe la información en paralelo (periférico de salida) o la proporciona en paralelo (periférico de entrada). Solo para periféricos próximos al procesador Barra de direcciones n INTERFAZ X/Y 0 1 2 Señales de control Impulso de transferencia C 8 2n-1 A otros circuitos de interfaz A otros periféricos Barra de direcciones Señal de control 0 1 2 n-1 Barra de datos DIGITAL REGISTRO (BUFFER) DECODIF. G PROCESADOR A otros periféricos DIGITAL PERIFÉRICO VISUALIZADOR ESTÁTICO INTERFAZ REGISTRO (BUFFER) DECODIF. X/Y 0 1 2 0 1 2 BCD/7SEG Impulso de transferencia 1 2 4 C 8 Al periférico G a◊ b◊ c◊ d◊ e◊ f◊ g◊ BCD/7SEG n-1 2n-1 1 2 A otros circuitos de interfaz 4 8 Diagrama de bloques mínimo de un puerto de salida en paralelo +V R +V R a◊ b◊ c◊ d◊ e◊ f◊ g◊ Ejemplo de aplicación de un puerto de salida en paralelo que conecta un procesador digital y un visualizador estático Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: PUERTO PARALELO 8 Barra de datos PROCESADOR Barra de direcciones DIGITAL n A otros periféricos Señal de control 8 de entrada INTERFAZ Barra de datos PROCESADOR DIGITAL A otros periféricos Señales de control 0 1 2 0 1 2 n-1 de entrada G INTERFAZ EN X/Y n Barra de direcciones 1 DECODIF. 8 A otros circuitos de interfaz 8 2n-1 DECODIF. X/Y 0 1 2 0 1 2 Al periférico G Diagrama de bloques simplificado de un puerto de entrada en paralelo. A otros circuitos de interfaz n-1 2n-1 4 Al periférico EN 1 EN 1 EN 1 EN 1 EN 1 EN 1 EN 1 EN 1 4 Al periférico Diagrama de bloques de un puerto de entrada en paralelo. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: PUERTO PARALELO 8 Barra de datos PROCESADOR DIGITAL n Barra de direcciones A otros periféricos 8 Señal de control de entrada EN 1 INTERFAZ DECODIF. X/Y 0 1 2 0 1 2 8 A otros circuitos de interfaz n-1 2n-1 G +V R R +V R R R R R R PERIFÉRICO 0V INTERRUPTORES 0V Ejemplo de aplicación de un puerto de entrada en paralelo que conecta un procesador digital y un conjunto de interruptores. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: PUERTO SERIE Es un interfaz que realiza la tarea de comunicar en serie el procesador y el periférico a través de un canal de comunicaciones. Combina un puerto paralelo con un procesador de comunicaciones que realiza dos tareas principales: - Convierte la información del formato paralelo al serie - A la información propiamente dicha le añade una información adicional para establecer un protocolo de comunicación de acuerdo con alguna de las normas establecidas (RS-232, USB, etc.) a fin de asegurar que otro procesador de comunicaciones situado próximo al periférico es capaz de interpretarla. Barra de datos PROCESADOR DIGITAL A otros periféricos Barra de direcciones Señal de control INTERFAZ CIRCUITO DE INTERFAZ CIRCUITO DE SELECCIÓN DE C1 PERIFÉRICO PROCESADOR DE 1D Diagrama de bloques de un puerto serie de un procesador digital. COMUNICACIONES Canal de comunicaciones PERIFÉRICO PROCESADOR DE COMUNICACIONES Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ FORMA DE CONTROLAR LA TRANSFERENCIA Forma de llevar a cabo la sincronización de dos sistemas secuenciales síncronos (el procesador y el periférico) que poseen generadores de impulsos independientes. Se puede realizar: - Control síncrono - Control por paro - Control por consulta - Control por interrupción. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: CONTROL SÍNCRONO 8 Barra de datos PROCESADOR Barra de direcciones n A otros periféricos DIGITAL INTERFAZ REGISTRO (BUFFER) DECODIF. X/Y Señales de control 0 1 2 0 1 2 Impulso de transferencia C 8 n-1 G Es el más sencillo y solo se puede utilizar cuando el periférico no realiza un proceso secuencial de la información y por tanto el procesador puede realizar la transferencia en cualquier instante sin necesidad de conocer el estado del periférico. 2n-1 A otros circuitos de interfaz PERIFÉRICO VISUALIZADOR ESTÁTICO BCD/7SEG 1 2 4 8 a◊ b◊ c◊ d◊ e◊ f◊ g◊ BCD/7SEG 1 2 4 8 +V R +V R a◊ b◊ c◊ d◊ e◊ f◊ g◊ Ejemplo de acoplamiento síncrono: Interfaz de un procesador y un visualizador estático Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: CONTROL POR PARO O CONSULTA Los controles por paro o consulta tienen en común la existencia de un biestable que es activado (puesto a uno) por el procesador y borrado por el periférico o viceversa según se trate de una transferencia de salida o entrada respectivamente. 8 Barra de datos A otros periféricos INTERFAZ 8 EN 8 Q CIRCUITO DE EN Señal de control n 1 DIGITAL Barra de direcciones 1 PROCESADOR R 1 PERIFÉRICO C 1D SELECCIÓN DE PERIFÉRICO Acoplamiento en paralelo por paro o por consulta de un periférico a un procesador. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS CIRCUITOS DE INTERFAZ: CONTROL POR INTERRUPCIÓN Al igual que los acoplamientos por paro y consulta o interrupción tiene un biestable que es activado (puesto a uno) por el procesador y borrado por el periférico o viceversa según se trate de una transferencia de salida o entrada respectivamente. Su hardware es mas complejo y existen muchas alternativas de implementación. Barra de datos PROCESADOR DIGITAL A otros periféricos Barra de direcciones Señal de control INTERFAZ CIRCUITO DE INTERFAZ CIRCUITO DE SELECCIÓN DE C1 PERIFÉRICO PROCESADOR DE 1D CIRCUITO DE CONTROL DE INTERRUPCIONES Canal de comunicaciones COMUNICACIONES Señal de control A otros periféricos acoplados por interrupción Acoplamiento por interrupción de un procesador de comunicaciones Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS Los diferentes tipos de aplicaciones exigen requisitos distintos al microcontrolador utilizado para implementar un sistema electrónico de control o comunicaciones. Esto hace que no sea factible diseñar un único microcontrolador idóneo para todas ellas. Por ello los fabricantes han desarrollado el concepto: FAMILIA Conjunto de microcontroladores que se caracterizan por poseer una misma arquitectura interna y un juego de instrucciones compatible y se diferencian en uno o más de los siguientes parámetros: • La capacidad de operación en paralelo • La capacidad de memoria • Los circuitos de interfaz de entrada/salida y los periféricos internos • El juego de instrucciones • La arquitectura externa • Los modos de operación Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS Capacidad de operación en paralelo Número de bits de las combinaciones binarias con las que realiza operaciones aritméticas o lógicas en un solo ciclo de instrucción. Los microcontroladores más utilizados actualmente son de 8 bits que se denomina octeto (Byte). Los microcontroladores de 16 y 32 bits se utilizan en las aplicaciones en las que se necesita una gran velocidad de operación. Capacidad de memoria Tienen una memoria en la que almacenan los datos y otra en la que almacenan las instrucciones. Ambas son de acceso aleatorio. Las memorias pueden ser: - Memorias de datos - Activas: RAM o NVRAM - Pasivas: EEPROM - Memorias de instrucciones: ROM, EPROM, FLASH - Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS INTERFACES DE ENTRADA/SALIDA: PUERTO DE ENTRADA MICROCONTROLADOR Barra de datos PROCESADOR Barra de direcciones DIGITAL DECODIFICADOR DE POSICIONES CS ≥1 Señal de lectura (RD) Figura 1.26 Diagrama de bloques básico de un bit de un puerto paralelo de salida. Terminal de entrada EN 1 INTERFAZ Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS INTERFACES DE ENTRADA/SALIDA: PUERTO DE SALIDA MICROCONTROLADOR Barra de datos PROCESADOR Barra de direcciones DIGITAL INTERFAZ D BIESTABLE DECODIFICADOR DE DIRECCIONES Señal de escritura (WR) CS ≥1 CERROJO LE Terminal de salida Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS INTERFACES DE ENTRADA/SALIDA: PUERTO DE ENTRADA/SALIDA MICROCONTROLADOR Barra de datos PROCESADOR Barra de direcciones DIGITAL INTERFAZ 1 Señales de control de entrada y salida CIRCUITO DE EN Al periférico SELECCIÓN DE PERIFÉRICO C Esquema básico de un puerto de entrada/salida Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS INTERFACES DE ENTRADA/SALIDA: PUERTO DE ENTRADA/SALIDA BIDIRECCIONAL MICROCONTROLADOR Barra de datos A otros periféricos Barra de direcciones 8 EN REGISTRO DE SENTIDO & C1 REGISTRO DE SALIDA 1 EN INTERFAZ 8 1 Señal al de lectura (RD) Señal al de escritura (WR) DIGITAL & PROCESADOR C1 CIRCUITO DE SELECCIÓN DE PERIFÉRICO 8 1D 8 1D 1 & EN 1 & EN Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS INTERFACES DE ENTRADA/SALIDA PUERTO DE ENTRADA/SALIDA SEMIBIDIRECCIONAL (QUASIBIDIRECTIONAL) MICROCONTROLADOR Barra de datos Barra de direcciones 8 INTERFAZ CIRCUITO DE 8 REGISTRO DE SALIDA C +V SELECCIÓN DE R PERIFÉRICO 8 1D ◊ EN Señal de lectura (RD) Señal de escritura (WR) DIGITAL 1 PROCESADOR Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS Temporizadores/Contadores (Timers/Counters) Se emplean para establecer periodos de tiempo (temporizadores) y para contar el número de sucesos que se producen en el exterior (contadores). Están constituidos por un contador, un multiplexor y un registro de entrada y salida en paralelo que almacena el modo de operación T/C CTR G1 M2 C3/1,2+ MUX G G 1 Impulsos de conteo 1 n 1,2,3D G1 RCO C2 PROCESADOR 1,2D DIGITAL Fin de la temporización/ conteo del máximo número de impulsos Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS TEMPORIZADOR/CONTADOR Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS TEMPORIZADOR/CONTADOR DEL 8051 Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores PROCESADORES DIGITALES SECUENCIALES SÍNCRONOS MICRONTROLADORES QUE SOLO TIENEN TEMPORIZADOR/CONTADOR Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS Circuito de vigilancia o perro guardián (Watchdog) En su versión más sencilla es un temporizador que cuando pasa por cero al rebasar su capacidad, provoca un reinicialización automática del microcontrolador. Se utiliza para que el microcontrolador no se quede bloqueado de forma indefinida tras un fallo del programa o una pérdida del control de programa. Si el circuito de vigilancia está habilitado, se debe diseñar el programa de trabajo que controla la tarea para que reinicialice el watchdog antes de que se provoque el rebasamiento ya que en otro caso se producirían reinicializaciones del microcontrolador mientras éste funciona normalmente. En el caso contrario, si el programa falla o se bloquea el circuito de vigilancia termina su temporización y provoca la reinicialización. Se suele combinar con el temporizador/contador. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS Esquema de bloques del circuito de vigilancia y del temporizador/contador de los PIC10F200/202/204/206 Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS CIRCUITO DE VIGILANCIA Y TEMPORIZADOR/CONTADOR DEL PIC16C5X Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS Circuito de control de modo de bajo consumo Para ahorrar energía los microcontroladores poseen una o más instrucciones especiales que se utilizan cuando el microcontrolador no ejecuta ninguna instrucción mientras está a la espera de algún acontecimiento externo. Esta instrucción sitúa al microcontrolador en un modo de bajo consumo, en el cual la energía consumida es mucho menor que en funcionamiento normal. Al activarse una interrupción ocasionada por el acontecimiento esperado el microcontrolador recupera su modo de funcionamiento normal. Pueden existir diversos modos de bajo consumo. Los modos habituales (de mayor a menor consumo) son: – Reposo (Idle): El procesador está detenido pero los periféricos están activos. También llamado dormido (Sleep) – Detenido (Stop): El procesador y los periféricos están detenidos (excepto el circuito de vigilancia en algunos micros). – Mínima potencia (Power down). Sólo se mantiene alimentada parte de la memoria. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS MODOS DE BAJO CONSUMO DEL MICROCONTROLADOR Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS Convertidores analógico/digital y digital/analógico Los microcontroladores que incorporan un convertidor analógico/digital pueden procesar señales analógicas, que se utilizan en numerosas aplicaciones. Suelen disponer de un multiplexor que permite aplicar a la entrada del convertidor diversas señales analógicas procedentes de terminales diferentes del circuito integrado. Por su parte el convertidor digital/analógico transforma los datos digitales, obtenidos como resultado de la ejecución del proceso, en una señal analógica y la aplica al exterior a través de uno de los terminales del microcontrolador. Convertidor An/Digital del microcontrolador Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PERIFÉRICOS INTERNOS Procesadores de comunicaciones Todos los microcontroladores poseen recursos de comunicaciones para transmitir y recibir información en serie, por ello se les suele denominar puertos serie (Serial ports). Los recursos físicos (hardware) : - Almacenan temporalmente la información. - Pasan la información de paralelo a serie o viceversa. - Establecen por hardware el protocolo a nivel de enlace. Existen múltiples normas de comunicaciones serie: UART, I2C, SPI, JTAG, etc. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES Microcontrolador 80C652 con procesador de comunicaciones I2C (poco utilizado actualmente) Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo MICRONTROLADOR P89LPC952 DE PHILIPS CON PROCESADORES DE COMUNICACIONES UART, I2C, SPI y JTAG Microcontroladores Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS PUERTO SERIE (UART) Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES PARÁMETROS CARACTERÍSTICOS EJEMPLO DE PUERTO SERIE USB Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES CLASIFICACIÓN SEGÚN INTERFACES DE ENTRADA/SALIDA Y LOS PERIFÉRICOS INTERNOS Microcontroladores de aplicación general Se caracterizan por poseer un conjunto de circuitos de interfaz de entrada/salida (puerto serie, puerto paralelo, etc.) y bloques funcionales determinados (por ejemplo temporizadores /contadores, convertidores analógico/digitales, etc.), que se pueden utilizar en múltiples aplicaciones. Para adaptar el microcontrolador a una aplicación específica, los circuitos de interfaz suelen ser configurables (programables), es decir, su funcionamiento se puede modificar mediante la ejecución de determinadas instrucciones. Un ejemplo de microcontroladores de aplicación general son los miembros de la familia de microcontroladores PIC de arquitectura Harvard y los microcontroladores de las distintas familias basadas en el 8051. Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES CLASIFICACIÓN SEGÚN INTERFACES DE ENTRADA/SALIDA Y LOS PERIFÉRICOS INTERNOS MICROCONTROLADORES ESPECIALIZADOS Poseen un hardware y un software especialmente orientados a una determinada área de la tecnología. A su vez se pueden clasificar en especializados comerciales y de aplicación específica. Microcontroladores especializados comerciales Poseen circuitos de interfaz configurables y periféricos internos, combinados con un juego de instrucciones, que facilitan la realización de sistemas electrónicos adecuados para aplicaciones de gran consumo con características normalizadas, como por ejemplo lectores y grabadores de discos compactos, etc. Microcontroladores de aplicación específica Poseen circuitos de interfaz y periféricos internos específicos para resolver un problema determinado, como por ejemplo el control del encendido de un vehículo. En general se diseñan y fabrican para un cliente específico y no están disponibles en el mercado como circuitos integrados normalizados (Standard off the shelf). Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES CLASIFICACIÓN SEGÚN EL JUEGO DE INSTRUCCIONES Microcontroladores orientados a aplicaciones de tratamiento y transferencia de datos Son microcontroladores que se caracterizan por tener un juego de instrucciones orientado al carácter y al tratamiento de tablas y bloques de datos. Son ejemplos de este tipo de microcontroladores los utilizados para implementar redes de área local o actuar como controladores de impresoras de alta velocidad. Microcontroladores orientados a aplicaciones de control en tiempo real Son microcontroladores que se caracterizan por tener un juego de instrucciones orientado al bit y bloques funcionales utilizados en aplicaciones de control como por ejemplo convertidores analógicos-digitales. Los microcontroladores de este tipo se utilizan para implementar autómatas programables y procesadores de comunicaciones industriales (buses de campo, redes de sensores, etc.). Escuela Técnica de Ingenieros de Telecomunicación Departamento de Tecnología Electrónica Universidad de Vigo Microcontroladores MICROCONTROLADORES CLASIFICACIÓN SEGÚN LA ARQUITECTURA INTERNA Microcontroladores no ampliables o compactos UNIDAD No tienen capacidad para ampliar los recursos físicos internos (Hardware interno). Microcontroladores ampliables o expansibles Proporcionan al diseñador de sistemas la posibilidad de ampliar tanto la memoria de datos como la de instrucciones y los interfaces de periféricos. DE MEMORIA MICROCONTROLADOR NO AMPLIABLE A los periféricos UNIDAD CENTRAL DE Integración en un único Circuito integrado PROCESO MICROCONTROLADOR AMPLIABLE INTERFAZ A los periféricos Buses A los periféricos