SISTEMAS DIGITALES II Ingeniería en Automática Industrial
Profesor: Ing. Vladimir Trujillo Arias Oficina 315 extension 2134 Email vtarias@unicauca.edu.co co ftp://hefestos.ucauca.edu.co
Objetivos Generales Introducir al estudiante en el conocimiento de las características principales y los conceptos fundamentales del manejo, programación y aplicación de los microcontroladores. Al finalizar el curso, el alumno estará en capacidad de extrapolar los conocimientos adquiridos para a varias familias de microcontroladores con el lfin de plantear soluciones en las que estos dispositivos son aplicables
Metodología El curso es teórico práctico. La primera sección del curso es completamente teórica, el resto del curso es teórico práctico, finalizando con un trabajo que tratará de recopilar todo el conocimiento adquirido en el semestre.
Contenido CAPITULO 1. Introducción a los microcontroladores controlador y microcontrolador Microcontrolador evolución de las máquinas: el microprocesador el microcontrolador arquitectura interna:
Contenido el mercado de los microcontroladores que microcontrolador emplear los más populares recursos comunes a todos recursos especiales la familia de los PIC gama enana: pic12c(f)xxx gama baja o básica: pic16c5x gama media. pic16cxxx. gama alta: pic17cxxx y pic18f
Contenido procesadores digitales de señal (DSP) Características relevantes de los PIC oscilador (PIC) PLD y FPGA s CAPITUL0 2. Recursos Comunes Para la Gama Baja Arquitectura genérica Re inicialización del microcontrolador
Contenido Organización de la Memoria (Programa) Organización de la Memoria (Datos) Modos de direccionamiento Registros Especiales Puertos CAPITULO 3. La Gama Media de los PIC Similitudes con la Gama Baja
Contenido Novedades Formato de las Instrucciones Organización de la Memoria Registros Comunes en la gama media Registros Propios del PIC 16F84 Registros Propios del PIC 16F87X
Contenido Los puertos de los PIC Módulo del TIMER1 Módulo del TIMER2 Módulo A/D Módulos CCP Módulo MSSP Módulo USART
Contenido CAPITULO 4. Conceptos Generales de la Gama Alta y DS PICS. Trabajo final para la gama media.
Evaluación EVALUACIÓN: Se realizará una primera evaluación de teórica que equivale a un 35% La segunda evaluación será teórico práctica con un porcentaje del 35 %. El proyecto final tendrá el 30 % final de la materia. a
Bibliografía Bibliografía escrita. Microcontroladores PIC. La Solución en un Chip. J. Mª. Angulo Usategui, E. Martín Cuenca, I. Angulo Martínez Ed. Paraninfo. ( 1997 ) Introducción a los Microcontroladores José Adolfo Gonzáles Vásquez Ed. McGraw Hill Microcontroladores. Vicente Torres.
Bibliografía Bibliografía electrónica. Microchip. http://www.microchip.com Parallax. http://www.parallaxinc.com Página de Javier Alzate: Microcontroladores PIC16CXX. http://www.geocities.com/capecanaveral/lab/9827/microcon.htm Microsystems Engineering: Los autores de los Libros de Pics en castellano.http://www.arrakis.es/~msyseng Links sobre Pics de David Tait. http://www.man.ac.uk/~mbhstdj/piclinks.html ac mbhstdj/piclinks html Microchip Net resources. http://www.geocities.com/siliconvalley/way/5807pic16/17microcontroller & Basic Stamp: Con algunos proyectos. http://www.doc.ic.ac.uk/~ih/doc/pic The Electronic c Projects Page: Algunos proyectos. os http://www.blichfeldt.dk p// d Bengt Lindgrens HomePage: Programador y archivos. http://home5.swipnet.se/~w- 53783 Diseño de sistemas con microcontroladores: Enlaces. http://www.infoab.uclm.es/~amartine Página de Atmel. http://www.atmel.com
Capitulo 1. Introducción a los microcontroladores
Controlador y Microcontrolador Los microcontroladores están conquistando el mundo. Están presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el funcionamiento de los ratones y teclados de los computadores, en los teléfonos, en los hornos microondas y los televisores de nuestro hogar.
Controlador y Microcontrolador Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios procesos. Ejemplos: Horno, Automóvil. Arquitectura Cambiante en el tiempo. Discreto Integrado Microprocesador. Integrados Microcontrolador.
Microcontrolador Un microcontrolador es un circuito integrado de alta escala de integración que incorpora la mayor parte de los elementos que conforman un controlador.
Microcontrolador Características: Este circuito integrado programable contiene todos los componentes de un computador. No alcanzan el nivel de procesamiento de por ejemplo, un 8086, aunque poseen la ventaja de poder trabajar sin memoria externa. El microcontrolador es un computador dedicado. En su memoria sólo reside un programa destinado a gobernar una aplicación determinada, una vez programado y configurado el microcontrolador solamente sirve para gobernar dicha tarea. Es un computador completo, aunque de limitadas prestaciones, que está contenido en el chip de un circuito integrado y se destina a gobernar una sola tarea.
Microcontrolador El alto nivel de integración reduce notablemente la cantidad de componentes externos y los costos de desarrollo, mejora el desempeño del sistema, reduce la interferencia electromagnética, minimiza el consumo de potencia y agiliza el tiempo de realización El número de productos que utilizan uno o varios microcontroladores aumenta de forma exponencial. La empresa Dataquest pronosticó hace ya más de cinco años que en el 2000 existiría un promedio de 240 microcontroladores por cada hogar americano.
Microcontrolador Aumento de prestaciones Aumento de la fiabilidad: número de elementos disminuye el riesgo de averías y se precisan menos ajustes. Reducción del tamaño en el producto acabado: Mayor flexibilidad: modificación sólo necesita cambios en el programa de instrucciones.
Evolución de las máquinas: Esquema histórico: 500 a.c. Abaco. 1642 Pascal - calculadora de engranajes. 1833 Máquina de Babbage. 1889 Máquina de Hollerith utilizada para el censo en EE. UU. 1924-1960 Máquina perforadora de tarjetas. 1920-1930 Calculadoras para análisis diferencial. 1939 John V. Atanasoff y Clifford Burn prototipo de computadora basado en un sistema númerico binario. 1939 George Boole - algebra binaria y sistemas de circuitos de computadora. 1941 Computadoras electrónicas digitales. 1941 Konrad Zuse - computador operacional Z3 utilizado para diseño de aviones y misíles. 1943 Primera computadora que utilizaba tubos de vacío en lugar de relés, Alan Turing. El nombre de la máquina era Colossus, los criptográfos ingleses l a utilizaron para descifrar códigos secretos militares de los alemanes. Colossus fue diseñada para esta función específicamente
Evolución de las máquinas: 1944 La Universidad de Harvard e IBM construyeron una calculadora controlada por una secuencia automática, proyecto Mark I con 3,304 relés para funcionar como interruptores de on y off. 1946 Máquina ENIAC, por sus siglas en inglés significa Electronic Numeric Integrator and Calculator. El primer computador electrónico moderno de propósito general. Diseñada por dos ingenieros norteamericanos, John Mauchly y J. Presper Eckert, Jr., se puso al servicio de la Universidad de Pensilvania en este año. Pesaba 30 toneladas, contenía 17,468 tubos al vacío conectados entre sí por 800 km. de cableado y ejecutaba 100,000 operaciones por segundo. 1948 Invención del transistor. Revolucionó la construcción de computadoras debido a que su tamaño era mucho más pequeño que los tubos al vacío y no generaban tanto calor como aquellos y eran más fiables. 1965 Aparación de mini-computadores (PDP-11) 1971 Aparición del primer microprocesador integrado ( INTEL 4004)
El Microprocesador Definición: Es el dispositivo encargado de realizar cálculos aritméticos y lógicos y que temporiza y controla las operaciones de los demás elementos de un sistema. Partes: - Unidad de control. - Unidad Aritmético-lógica (ALU). - Registros: - Contador de programa (program counter). - Registros generales. - Registro de estado. - Stack. Reloj de funcionamiento: - Ciclo de reloj: señal de reloj a la entrada del procesador. - Ciclo de máquina: periodo de ejecución de una operación completa del procesador. - Ciclo de instrucción: periodo que se requiere para ejecutar una determinada instrucción.
El Microprocesador
El Microcontrolador Características: Este circuito integrado programable contiene todos los componentes de un computador. No alcanzan el nivel de procesamiento de por ejemplo, un 8086, aunque poseen la ventaja de poder trabajar sin memoria externa. El microcontrolador es un computador dedicado. En su memoria El microcontrolador es un computador dedicado. En su memoria sólo reside un programa destinado a gobernar una aplicación determinada, una vez programado y configurado el microcontrolador solamente sirve para gobernar dicha tarea.
El Microcontrolador Es un computador completo, aunque de limitadas prestaciones, que está contenido en el chip de un circuito integrado y se destina a gobernar una sola tarea. El alto nivel de integración reduce notablemente la cantidad de componentes externos y los costos de desarrollo, mejora el desempeño del sistema, reduce la interferencia electromagnética, minimiza el consumo de potencia y agiliza el tiempo de realización El número de productos que utilizan uno o varios microcontroladores aumenta de forma exponencial.
El Microcontrolador Arquitectura t Interna: Procesador. Memoria no volátil para contener el programa. Memoria de lectura y escritura para guardar los datos. Líneas de E/S para los controladores de periféricos: Comunicación paralelo. Comunicación ió serie. Diversas puertas de comunicación (USB...) Recursos auxiliares: Circuito de reloj, Temporizadores Perro guardián (watchdog) Conversores A/D y D/A Comparadores analógicos Protección ante fallos de la alimentación Estado de reposo o de bajo consumo
El Microcontrolador
El mercado de los microcontroladores Comunicaciones: 30% Consumo general: 27% Automoción: 18% Informática: 15% Industria: 10%
El mercado de los microcontroladores
Que microcontrolador Emplear Costos Aplicación Procesamiento de datos Entrada y salida Consumo de energía (CMOS) Memoria Ancho de Palabra Diseño de la placa
Los más populares 8048 (Intel). Es el padre de los microcontroladores actuales 8051 (Intel y otros). Es sin duda el microcontrolador más popular. Fácil de programar, pero potente. (Arquitectura Hardvard) 80186, 80188 y 80386 EX (Intel). Versiones en microcontrolador de los populares microprocesadores 8086 y 8088. Su principal ventaja es que permiten aprovechar las herramientas de desarrollo para PC.
Los más populares 68HC11 (Motorola y Toshiba). Es un microcontrolador de 8 bits potente y popular con gran cantidad de variantes.(arq. Von Neuman) 683xx (Motorola). Surgido a partir de la popular familia 68k, a la que se incorporan algunos periféricos. i Son microcontroladores de altísimas prestaciones.
Los más populares PIC (MicroChip). Familia de microcontroladores que gana popularidad día a día. (Arq. Hardvard) Fueron los primeros microcontroladores RISC.
Recursos Comunes a Todos Recursos Comunes a Todos Arquitectura Von Newman
Recursos Comunes a Todos Recursos Comunes a Todos Arquitectura Hardvard
Recursos Comunes a Todos Arquitectura Harvard Extendida o Super Harvard ARChitecture (SHARC). Esta arquitectura incluye una memoria de caché (Reserva), la cual es utilizada para almacenar instrucciones y datos que serán reutilizadas por la CPU, liberando así los dos buses de la arquitectura Hardvard y permitiéndoles ser utilizados en la búsqueda y almacenamiento de datos, mientras se ejecutan las instrucciones en caché
Recursos Comunes a Todos Arquitectura Harvard Extendida o Super Harvard ARChitecture (SHARC).
Recursos Comunes a Todos Arquitectura Harvard Extendida o Super Harvard ARChitecture (SHARC).
Recursos Comunes a Todos Arquitectura Harvard Extendida o Super Harvard ARChitecture (SHARC).
Recursos Comunes a Todos Arquitectura Von Newman Modificada. La arquitectura Von Neuman modificada, permite múltiple acceso a memoria por instrucción, valiéndose de un truco simple que consiste en hacer el reloj de acceso a memoria más rápido que el de instrucciones. Por ejemplo el DSP32C de Lucent con reloj de 80Mhz, tiene un ciclo de instrucción compuesto por cuatro estados de máquina. Mientras que el acceso a memoria de este DSP es posible realizarlo cada estado de máquina siendo posible entonces realizar cuatro accesos a memoria por cada ejecución de instrucción
Recursos Comunes a Todos CPU CISC Aprox. 80 instrucciones Arquitectura Von Neuman RISC Aprox. 30 instrucciones. Arquitectura Hardvard SISC Diseños específicos (Controladores Empotrados o embebidos)
Recursos Comunes a Todos Memoria RAM. Los datos que manejan los programas varían continuamente, y esto exige que la memoria utilizada para ello debe ser de lectura y escritura. ROM. En este tipo de memoria el programa se graba en el chip durante el proceso de fabricación mediante el uso de máscaras. Se aconseja este tipo de memoria cuando se precisan series muy grandes, con el fin de disminuir costos de fabricación. OTP. Este modelo de memoria solo puede grabarse una vez por parte del usuario, utilizando el mismo procedimiento que con la memoria EPROM. Posteriormente no se puede borrar. Su bajo precio y la sencillez de la grabación aconsejan este tipo de memoria para prototipos finales y series de producción cortas.
Recursos Comunes a Todos Memoria EPROM. La grabación de esta memoria se realiza mediante un dispositivo físico gobernado desde un computador personal. En la superficie de la cápsula del microcontrolador existe una ventana de cristal por la que se puede someter el chip a rayos ultravioletas para producir su borrado y emplearla nuevamente. EEPROM. La grabación es similar a las memorias OTP y EPROM, pero el borrado se hace eléctricamente. Puede puede ser programada y borrada muchas veces FLASH. Se trata de una memoria no volátil, de bajo consumo, que se puede escribir y borrar en circuito al igual que las EEPROM, pero suelen disponer de mayor capacidad que estás ultimas. El borrado sólo es posible con bloques completos y no se puede realizar sobre posiciones concretas. Son muy recomendables en aplicaciones en las que sea necesario modificar el programa a lo largo de la vida del producto
Recursos Comunes a Todos Puertas de entrada y salida Puertas de entrada y salida
Recursos Comunes a Todos Reloj Cristal RC Externo Velocidad d vs. Energía
Recursos Especiales Perro Guardián Corrección de fallos o bloqueos Refresco para evitar acciones Temporización Reset
Recursos Especiales Timers Conteos de impulsos externos Retardos de software
Recursos Especiales Brownout Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentación (VDD) es inferior a un voltaje mínimo ( brownout ). brownout). Mientras el voltaje de alimentación sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor.
Recursos Especiales Estado de reposo o bajo consumo Conversor A/D D/A Comparador Analógico Modulador PWM
Recursos Especiales Puertas de comunicación UART, adaptador de comunicación serie asíncrona. USART, adaptador d de comunicación ió serie síncrona y asíncrona Puerta paralela esclava para poder conectarse con los buses de otros microprocesadores. USB (Universal Serial Bus), que es un moderno bus serie para los PC. Bus I 2 C, que es un interfaz serie de dos hilos desarrollado por Philips. CAN (Controller Area Network), para permitir la adaptación con redes industriales
LA FAMILIA DE LOS PIC
GAMA ENANA: PIC12C(F)XXX Se trata de un grupo de PICs de reciente aparición acaparadando la atención del mercado. Principal característica, reducido tamaño, al disponer sólo de 8 pines. Alimentados entre 2.5V y 5.5V, consumen menos de 2mA cuando trabajan a 5V y 4 MHz. Formato de sus instrucciones de 12 o de 14 bits y repertorio de 33 o 35 instrucciones, respectivamente. Los modelos 12C5xxx son los de tamaño de instrucción de 14 bits. Los modelos 12F6xxx poseen memoria Flash para el programa y EEPROM para los datos.
GAMA BAJA O BÁSICA: PIC16C5X Serie de PICs de recursos limitados, pero con una de las mejores relaciones coste prestaciones. Encapsulados con 18 y 28 pines. Pueden alimentarse a partir de una tensión de 2.5V, lo que les hace ideales en las aplicaciones i que funcionan con pilas. Repertorio de 33 instrucciones cuyo formato consta de 12 bits. No oadmiten ningún tipo de interrupción ó y la Pila sólo dispone de dos niveles.
GAMA MEDIA. PIC16C(F)XXX. Es la gama más variada y completa. Desde 18 pines hasta 68. Repertorio de 35 instrucciones i Dispone de interrupciones y una pila de 8 niveles que permite el anidamiento de subrutinas. La gama media puede clasificarse en las siguientes subfamilias: Gama media estándar (PIC16C55X) Gama media con comparador analógico (PIC16C62X/64X/66X) Gama media con módulos de captura (CCP), modulación de anchura de impulsos (PWM) y puerta serie (PIC16C6X)
GAMA MEDIA. PIC16C(F)XXX. Gama media con CAD de 8 bits (PIC16C7X) Gama media con CAD de precisión (PIC14000) Gama media con memoria Flash y EEPROM (PIC16X8X) Gama media con driver LCD (PIC16C92X) Encuadrado en la gama media también se halla la versión PIC14000, que soporta el diseño de controladores inteligentes para cargadores de baterías, pilas pequeñas, fuentes de alimentación ininterrumpibles y cualquier sistema de adquisición y procesamiento de señales que requiera gestión de la energía de alimentación. Los PIC14C000 admiten cualquier tecnología de las baterías como Li Ion, NiMH NiCd Pb y Zinc
GAMA ALTA: PIC17CXXX y Filia 18 Repertorio de 58 instrucciones de 16 bits. Disponen de un sistema de gestión de interrupciones vectorizadas muy potentes. También incluyen variados controladores de periféricos, puertas de comunicación serie y paralelo con elementos externos y un multiplicador li hardware de gran velocidad. La característica más destacable de esta gama es su arquitectura abierta, que consiste en la posibilidad de ampliación del microcontrolador con elementos externos. Para este fin, los pines sacan al exterior las líneas de los buses de datos, direcciones y control, a las que se conectan memorias o controladores de periféricos.
PROCESADORES DIGITALES DE SEÑAL (DSP) Definición: - sistemas que realizan la aplicación de operaciones matemáticas a señales representadas de forma digital, it en los cuales la carga computacional es extremadamente intensa. Fabricantes: Texas Instruments, Motorola, Lucent Technologies y Analog Devices, Microchip Apliciones: i Grandes aplicaciones (dinero): Telefonía celular, disqueteras, módems. Gran volumen de datos: exploración sonar y sísmica.
PROCESADORES DIGITALES DE SEÑAL (DSP) Características importantes a la hora de elegir un DSP u otro - Formato aritmético. - Ancho de palabra. - Velocidad de ejecución - Organización de la memoria. - Segmentación - Consumo y coste.
Algunas características relevantes de los PIC Arquitectura Hardvard Segmentación
Algunas características relevantes de los PIC Ortogonalidad (PIC) (Accede a la memoria de programa y a la de datos al tiempo) Tamaño de la instrucción fijo RISC (PIC) Arquitectura basada en registros Para los PIC, diversos modelos con periféricos diferentes
Oscilador (PIC) Desde la gama baja a la gama alta, se pueden encontrar frecuencias de oscilación del orden de los 32Khz en la gama baja a los 33 Mhz para la gama alta. Se cuenta con 4 ciclos de reloj por instrucción ió Cada instrucción utiliza un ciclo de instrucción ió a excepción de las de salto
Oscilador (PIC) RC (Estabilidad a mediana frecuencia)
Oscilador (PIC) Cristal (Oscilador estándar) 100Khz a 4 Mhz (68 a 100 pf / 10 a 22 pf)
Oscilador (PIC) HS Oscilador de alta velocidad 8 Mhz a 20 Mhz (22 a 47 pf.) LP oscilador de bajo consumo 33Khz / 200 Khz (33 a 68 pf / 15 a 33 pf ) PLL. Circuito multiplicador de frecuencia