480 likes | 640 Views
INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC . DTO. INGENIERIA ELECTRÓNICA. "Hay 10 tipos de personas: las que entienden binario y las que no" -Anónimo-. INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC. Asignatura de Libre Elección Semestre B 6 Créditos Martes y Miércoles de 8 a 10 H.
E N D
INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC DTO. INGENIERIA ELECTRÓNICA "Hay 10 tipos de personas: las que entienden binario y las que no"-Anónimo-
INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC Asignatura de Libre Elección Semestre B 6 Créditos Martes y Miércoles de 8 a 10 H • TEMARIO • TEMA 1.- Introducción a los Microcontroladores. • TEMA 2.- Introducción a los Microcontroladores PIC. • TEMA 3.- PICmicro GAMA MEDIA: PIC16F84 [I] • Memoria de Programa y Datos. Registros. • Juego de Instrucciones y Lenguaje ensamblador. • TEMA 3A.- Entorno de Trabajo MPLAB-IDE. • TEMA 3B.- Simulación de PIC por PC: ISIS de PROTEUS. • TEMA 3C.- Programación Básica. • Temporizaciones, saltos, subrutinas, tablas. • TEMA 4.- PICmicro GAMA MEDIA: PIC16F84 [II] • Puertos de entrada/salida (sistemas de conexión externa). • TEMA 5.- PICmicro GAMA MEDIA: PIC16F84 [III] • Características especiales: Oscilador, Reset, Watchdog, Sleep, Interrupciones, Protección de código, Programación.
INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC • TEMARIO • TEMA 6.- PICmicro GAMA MEDIA: PIC16F87X • Arquitectura. • Modulos integrados: A/D, CCP, SSP/SPI/I2C, USART/SCI, Comparador Analógico • TEMA 6A.- Programación en C: CCS
INTRODUCCIÓN A LAS HERRAMIENTAS DE DISEÑO CON PIC • Bibliografia • “El Microcontrolador 80C5x7. Arquitectura y Aplicaciones”. Gimeno, F.J. et al. UPV-2002-521. • “Microcontroladores PIC. La solución en un CHIP”. Angulo, J.M. et al. Ed.Paraninfo-Thomson. • Microcontrolador PIC16F84. Desarrollo de proyectos. Palacios, E. et al. Ed.RA-MA. • “Embedded C Programming and the Microchip PIC”. Barnett, r.Thomson. • “PIC Microcontroller Project Book. For PICBasic and PICBasic Pro Compilers”. Iovine, J. Ed.McGraw-Hill. • “Programming and customizing PICmicro Microcontrollers”. Predko, M. Ed.McGraw-Hill. • “Microcontroller Based Temperature Monitoring and Control”. Ibrahim, D. Ed. Newnes. • MICROCHIP WEB: http://www.microchip.com • Página de Fernando Nuño García : http://www2.ate.uniovi.es/fernando/ • Página de Montserrat García Famoso : http://www.etse.urv.es/~mgarciaf/
INTRODUCCIÓN A LOS MICROCONTROLADORES DTO. INGENIERIA ELECTRÓNICA TEMA 1
INTRODUCCIÓN A LOS MICROCONTROLADORES • Microprocesador • Sistema secuencial Síncrono: Estados Infinitos • Interpreta (decodifica) combinaciones de bits (órdenes) y genera señales digitales internas y/o externas para el resto de circuitos, para “ejecutar” de manera continua una secuencia de órdenes (o programa). • Necesita una alimentación estable, un oscilador para sincronizar las ejecuciones y un sistema mínimo exterior. Microprocesador Intel 80486DX2.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Sistema mínimo microprocesador MEMORIA Microprocesador DISPOSITIVOS DE ENTRADA SALIDA ALU UC REG UNIDAD DE CONTROL Y PROCESOS • UNIDAD DE CONTROL • UNIDAD ARITMETICO-LÓGICA • REGISTROS
INTRODUCCIÓN A LOS MICROCONTROLADORES • Microcontrolador • Integrado que incluye un microprocesador, memoria (de programa y datos) y unidades de entrada/salida (puertos paralelo, temporizadores, módulos CCP, conversores A/D, puertos serie, etc) • “SISTEMAS EMPOTRADOS” (Embedded systems): Sistemas que incorporan microcontroladores (o microprocesadores) para una tarea específica pero que no son “visibles” ni “programables” directamente por el usuario (teléfono móvil, lavadora, etc)
INTRODUCCIÓN A LOS MICROCONTROLADORES • Microcontrolador • VENTAJAS: • Bajo Coste. • Simplificación de stock, reducido tamaño placa, simplificación fabricación. • Alto grado de integración/Simplificación de periféricos. • Disminuye el hardware, placas menos complejas, aumenta la fiabilidad al reducirse el número de componentes. • Aumento de capacidad y velocidad de ejecución. • Disminución consumo. • Utilización de tecnologías MOS, CMOS o HCMOS. • INCONVENIENTES: • Necesidad de herramientas y sistemas de desarrollo que incrementan el tiempo y el coste de diseño. • Programación: necesidad de programación por máscaras en grandes series y de diferentes tipos en pequeñas series.
USART SPI I2C CAP COMP PWM EEPROM A / D D / A Display Drivers Power Drivers FLASH INTRODUCCIÓN A LOS MICROCONTROLADORES • Estructura Microcontrolador • CPU. • Memoria RAM de datos. • Memoria ROM/UVPROM/OTPROM de programa. • Memoria EEPROM de datos. • Puertos de entrada-salida. • Temporizadores/contadores. • Sistemas de interrupción. • Módulos auxiliares: • Convertidores A/D. • USART. • Etc
INTRODUCCIÓN A LOS MICROCONTROLADORES • Aplicaciones Microcontrolador • Microcontroladores se usan cuando la potencia de procesamiento no es importante. • Robótica: • Los sistemas basados en microprocesador y los microcontroladores se usan extensivamente en robótica. • Equipos informáticos: • Impresoras, copiadoras, etc. • Sistemas portátiles y autónomos • Debido a su pequeño tamaño y bajo consumo. • El sector del automóvil: • Es uno de los mayores mercados de microcontroladores. • Desarrollo de microcontroladores específicos: • Deben responder a condiciones extremas. • Deben ser muy fiables. • Sector doméstico (de 35 a 240 microcontroladores)
INTRODUCCIÓN A LOS MICROCONTROLADORES • Tipos de microcontroladores • • Según el ancho de palabra: • Los hay de 4, 8, 16, y 32 bits • • Existen Microcontroladores/Procesadores especializados para: • Comunicaciones, Manejo del teclado, Procesamiento de la seña, Proceso vídeo, Etc • Elección de un microcontrolador • ¿Puedo obtener ayuda cuando tenga problemas? • ¿Qué herramientas de desarrollo están disponibles y cuanto cuestan? • ¿Qué clase de documentación tengo disponible? (manuales de referencia, notas de aplicación, libros). • ¿Tiene el fabricante disponibles para ese microcontrolador dispositivos periféricos? (conversores A/D, memoria, reguladores de tensión) • ¿Disponen de microcontroladores OTM, grabables por máscara, EPROM, de esa misma familia?. • Evaluar parámetros como tiempo de ciclo de instrucción y velocidad de bus, conjunto de instrucciones y modos de direccionamiento. • Consumo, modo standby o sleep.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Fabricantes de microcontroladores • INTEL 8048-8051-80C196-80386 • MOTOROLA 6805-68HC11-68HC12 • HITACHI HD64180 • PHILIPS 8051 • SGS-THOMSON ST-62XX • NATIONAL SMC. COP400-COP800 • ZILOG Z8, Z86XX • TEXAS INST. TMS370 • TOSHIBA 68HC11 • MICROCHIP PIC
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Técnicas de fabricación • CMOS (Complementary Metal Oxide Semiconductor) • Este es el nombre de la técnica con que se fabrican la mayoría los microcontroladores. • Características: • Bajo consumo • Pueden ser alimentados por baterías durante mucho tiempo. • Modo “sleep” • El reloj del sistema puede detenerse para reducir aún más su consumo. • Alta inmunidad al ruido eléctrico
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • 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.
INTRODUCCIÓN A LOS MICROCONTROLADORES C P U Program & Data Memory • Arquitectura Von-Neumann • El programa de instrucciones y los datos comparten la misma memoria 8 = 8 C P U • Arquitectura Harvard • Utiliza dos espacios de memoria distintos para las instrucciones y los datos. Esto permite utilizar distinto ancho de bus en ambos buses. Data Memory Program Memory 12 14 16 24 8 16
INTRODUCCIÓN A LOS MICROCONTROLADORES Instrucción “Long Word” • Bus instrucción/datos separados permiten diferentes anchos de bus. • La arquitectura Harvard permite instrucciones single-word/single-cycle Ejemplo: MOVE immediate, Acc 1100 imm<8> MOVLW #imm<8> 1 word / 1machine cycle op code MOVE #imm<8> imm<8> 2 bytes / 2 fetch cycles + exec
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • CISC (Complex Instruction Set Computer) • El conjunto de instrucciones es bastante heterogéneo: • Instrucciones son muy potentes. En algunos casos equivalen a muchas instrucciones simples. • Instrucciones especializadas para una tarea concreta. • Facilita la programación. • RISC (Reduced Instruction Set Computers) • Al tener un conjunto de instrucciones reducido: • – El controlador es más sencillo y el chip es más pequeño. • – Es más rápido. • – Tiene un consumo menor. • SISC (Specific Instruction Set Computer) • Incluyen instrucciones específicas para control: • Instrucciones de entrada/salida eficaces y sencillas. • Instrucciones específicas para operar a nivel de bit.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Opciones de Memoria • EEPROM (Electrically Erasable PROM) • Muchos microcontroladores incorporan una pequeña memoria EEPROM dentro del chip (Contiene parámetros que pueden cambiarse si la aplicación lo necesita). • Es lenta. • El número de veces que se puede borrar/grabar está limitado. • FLASH (EPROM) • Son más rápidas que las memoria EEPROM. • Permiten más ciclos de borrado/grabación.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Memoria RAM • Útiles para programas de gran tamaño. • Más rápida que las memorias no volátiles. • Número ilimitado de veces que puede grabarse. • Apropiada para aplicaciones con grandes cantidades de datos que cambian contínuamente. • Memoria Field programming/reprogramming • Memoria no volátil. • Puede reprogramase sin desconectar el microcontrolador. • Permite actualizaciones remotas.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Memoria OTP (One Time Programmable) • Un OTP es una memoria PROM que sólo puede grabarse una vez. • Se utiliza para pequeñas series. • Para probar el programa; antes de fabricar grandes cantidad de microcontroladores con memorias ROM de máscara. • Como los ciclos de desarrollo de productos son cada vez más cortos, es interesante para los fabricantes de microcontroladores ofrecer OTPs como una opción. • ROM de máscara • Son interesantes para un gran número de unidades cuando el programa va a ser el definitivo. • El tiempo de entrega es de 8 a 44 semanas.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Protección del software • El software está protegido: • Por encriptación. • Protección del fusible. • Es una opción en OTPs y EPROM. • En microcontroladores ROM de máscara no es necesaria: • Los fabricante de ROM de máscara prueban el microcontrolador para asegurarse que se programa correctamente. • En modo de prueba se puede leer cualquier dispositivo: • Se lee el código de la ROM y se compara con el original.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Memorias externas • Se pueden añadir RAM externas. • Se necesita que el microprocesador posea un modo expandido o extendido (acceso al bus interno). • Se utiliza el multiplexado de datos/direcciones. • – Se redefinen ciertas líneas de entrada/salida paralelo como bus de datos y direcciones. • – Para el demultiplexado se utiliza: • • la línea AS (Address Strobe) o ALE (Address Latch Enable). • • registro de 8 bits tipo 74373.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • 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. • Línea única para “despertar”.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Características (cont.) • Tensión disponible: • CMOS o HCMOS de 3 a 6 voltios. • NMOS fija de 5 voltios. • Necesidad de condensadores de desacoplo. • Protección Brownout: • Es un circuito que protege contra sobretensiones de alimentación. • Idle/Halt y Wakeup: • Pasa a modo de Ocioso/Parada por software (la RAM no pierde información) y consume un 70% menos. • Se sale (wakeup) mediante estímulos como interrupciones, temporizadores ex profeso.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Entradas y Salidas • Comunicación serie • UART (Universal Asynchronous Receiver-Transmitter) • Un UART es un adaptador serie para comunicaciones asíncronas. • USART • Un USART (Unidad Universal de Transmisión Recepción Síncrona y Asíncrona) es un adaptador serie para comunicaciones asíncronas o síncronas. • Los dispositivos que usan USART suelen ser más rápidos (hasta 16 veces) que un adaptador UART. • SPI (Serial Peripheral Interface) • El SPI permite la comunicación serie, duplex y asícrona. • Dispone de modo de bajo consumo. • SCI (Serial Communicactions Interfaces) • Un SCI es un UART reforzado, permite la comunicación serie asícrona full-duplex. • Dispone de dos modos de bajo consumo: wait y stop.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Comunicación serie (cont.) • I2C bus • Inter-Integrated Circuit Bus. • Es un bus de 2 hilos para comunicación serie desarrollador por PHILIPS. • Existen multitud de periféricos con este bus integrado. • MICROWIRE/PLUS • Es una interface de comunicación serie síncrona bidireccional. • Desarrollada por NATIONAL, su línea de dispositivos suele tenerla integrada. • CAN & J1850 • CAN (Cotroller Area Network) –conocido también como BUS CAN-. • Desarrollador por BOSH-INTEL. Se utiliza mayoritariamente en aplicaciones de automoción. • 1-WIRE • Es un interface de comunicación serie de un solo cable.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Conversor Analógico Digital (A/D). • Convierte la tensión analógica a su valor digital. • Pueden ser externos o internos al micro. • Existen, en general, tres tipos integrados: • Aproximaciones sucesivas (común en micro). • Delta-Sigma (común en DSP). • Flash (rápido pero menos habitual). • Conversores D/A. • Obtienen una tensión analógica a partir de un valor digital. • Conversor D/A con Modulador de ancho de Pulso (PWM). • Otros Dispositivos. • Contador de pulsos: cada pulso incrementa un contador. • Entrada de Captura: sirve para medir intervalos de tiempo entre eventos. • Comparadores analógicos.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Salidas en paralelo. • Son las más comunes y se suelen utilizar para controlar relés, led, displays, LCD, transistores, etc. • Se caracterízan por una corriente máxima individual y una máxima común. • Salidas de Potencia. • Montaje Darlington. • Control de relé. • Control de triacs. • Entradas en paralelo. • Son las comunes y se utilizan para lectura de pulsadores, teclados, en general para leer el nivel lógico de la entrada. Pueden estas optoaisladas. • Entradas/Salidas. • Permiten cambiar la patilla como salida o entrada en cada instante.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Interrupciones y Polling • Transferencia de E/S por consulta (Polling) • El polling es una técnica software en la que el microcontrolador pregunta constantemente al periférico si necesita ser atendido. • Interrupciones • Cuando los periféricos necesitan ser atendidos por el microcontrolador se lo comunican; de esta forma el micro puede atender a un programa principal (a diferencia del polling). • Es una técnica más rápida en atender al periférico que el polling. • El micro recibe la interrupción, identifica quién la ha provocado, ejecuta la rutina para atenderla y vuelve al programa principal. • Disparo de interrupciones: • Por flanco (de subida o bajada). • Por nivel.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Interrupciones (cont.) • Interrupciones enmascarables • Se pueden habilitar o inhibir de forma global o individual. • Interrupciones No enmascarables • No se pueden inhibir, son de obligada atención. • Interrupciones vectorizadas • Cuando se recibe una interrupción el micro debe localizar al periférico: • Preguntando a cada uno (modo muy lento). • Con las int. Vectorizadas donde cada uno se identifica por el bus de datos. • Los micros de 4 bits no tiene interrupciones vectorizadas, los de 8, 16 y 32 tienen vectorizadas con jerarquía de prioridad.º
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Reset y Reloj • Inicialización o reset • La mayoría de los micros disponen de un sistema de inicialización cuando se conectan a alimentación. • Poseen, además, de una entrada de reset sensible a nivel • Reloj • Todos los micros tienen integrado un oscilador y sólo necesitan un elemento externo para fijar la frecuencia dentro del margen indicado. • Puede ser interno o externo con ayuda de un cristal de cuarzo, resonador cerámico o una red RC.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Características de los Microcontroladores • Características especiales • Watchdog (Perro Guardian). • Un temporización que permite la recuperación del sistema ante un bloqueo. • Si el programa entra en bucle infinito o si deja de funcionar el watchdog provoca un reset tras un tiempo predeterminado. • Monitor de reloj (Clock Monitor). • Permite apagar el micro si la señal de reloj varia. • Cargador del programa residente. • Al inicializar, el micro carga automáticamente el programa a ejecutar por un puerto desde un lugar remoto (o desde el mismo micro). • Programa Monitor. • Un programa instalado en el micro que permite desarrollos básicos y depuración de programas. • Pueden comunicarse con un PC para ser ejecutado desde el mismo.
INTRODUCCIÓN A LOS MICROCONTROLADORES • 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: OR P1,#4 91 04 10 • 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.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • Lenguaje Máquina/ensamblador (cont.) • Tipos de instrucciones: • De transferencia de datos, aritméticas, lógicas, de tratamiento de bloques, de salto (condicional o incondicional), de control de interrupciones, de control de contadores, etc. • Formato de las Instrucciones: • Arquitectura RISC (PIC de Microchip). • Arquitectura CISC (Familia 96 de Intel).
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • Intérpretes • Un intérprete es un traductor de un lenguaje de alto nivel (próximo al lenguaje natural) a código máquina. • El intérprete está residente en el microcontrolador. • Ejecuta el programa leyendo cada sentencia en alto nivel traduciéndolas y ejecutándolas. • Los dos más conocidos son el BASIC y el FORTH: • El BASIC es más sencillo y legible. • EL FORTH es muy rápido por su proximidad al ensamblador.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • 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. • El micro ejecuta el programa sin interpretado. • 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.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • Simuladores • Un simulador ejecuta el programa de un microcontrolador en un ordenador: • Se puede ejecutar el programa paso a paso y ver exactamente qué pasa según el programa se ejecuta. • Permiten ver y modificar el contenido de los registros, memoria, variables y ver como responde el programa. • No soporta interrupciones reales. • Evita el ciclo programado/borrado de la EPROM en el desarrollo de programas
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • Debuggers residentes • Un debugger residente corre su programa dentro del propio micro, al mismo tiempo muestra el progreso de depuración en un máquina host (un PC). • Tiene las mismas características que un simulador normal con la ventaja adicional de que el programa corre en un micro real. • Generadores de Código • Ayudan a generar código de forma automática. • Pueden generar código tanto en lenguajes de alto nivel (C) como de bajo nivel (ensamblador).
INTRODUCCIÓN A LOS MICROCONTROLADORES • Lenguajes de Programación en Microcontroladores • Emuladores • Es la mejor opción para desarrollar un sistema, pero es cara. • Un emulador en un sistema que sustituye al microcontrolador al mismo tiempo que está captando información. • Sustituye al micro en el PCB (físicamente). • Da total información sobre lo que está pasando en la realidad y no requiere ningún recurso de la tarjeta que se analiza. • El emulador puede venir con su propio visualizador o conectado a un PC.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • Introducción • ¿Qué microcontrolador utilizo? • Si se deja libertad al diseñador (a veces viene impuesto por la empresa) se debe elegir el que permita disponer de herramientas de desarrollo a un precio razonable y con una buena documentación y/o asistencia técnica. • Una buena elección es el INTEL 8051, el MOTOROLA 68HC11 o el MICROCHIP PIC.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • 8051 (Intel y otros) • El 8051, pertenece a la segunda generación de microcontroladores Intel (1980), ha marcado muchas de las características que tienen los microcontroladores en la actualidad. • Tiene un diseño un poco raro, pero es muy potente y sencillo de programar (una vez que se conoce) • La arquitectura es Hardvard Modificada, con espacio de direcciones separadas para la memoria de programa y la memoria de datos • CPU de 8 bits optimizada para control de eventos. • La memoria de programa puede llegar hasta 64k. La parte baja (4k o 8k dependiendo del modelo) está dentro del chip. • El 8051 puede direccionar hasta 64k de memoria de datos externa, y solo puede acceder a ella mediante direccionamiento indirecto.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • 8051 (Intel y otros) –Cont.- • El 8051 tiene 128 bytes (256 bytes para el 8052) de memoria RAM dentro del chip reservada para: • – Registros con funciones especiales (SFR, Special function registers). • – Mapeo de las Entrada/Salidas. • El 8051 es un "procesador booleano”: • – Tiene instrucciones que pueden manejar bits desde cualquier sitio (RAM, acumulador, registros de E/S, etc.). • – Puede hacer operaciones lógicas a nivel de bits y ejecutar saltos relativos basados en dichos resultados. • Existe infinidad de software, comercial y libre, para este micro • Muchos fabricantes hacen cientos de variantes diferentes del 8051 para cualquier aplicación. Actualmente se ofrecen a 24 y 33MHz. • Versiones avanzadas: 8xC251 (MCS-251) y 80c196 (MCS-96)
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • 68HC11 (Motorola y Toshiba) • El popular 68HC11 es un poderoso microcontrolador de Motorola de 8 bits con las siguientes características: • – Direcciones de 16 bits. • – Juego de instrucciones similar a la familia 68xx: 6801, 6805, 6809. • – Tiene un único espacio de memoria principal donde están las instrucciones, datos, E/S, y temporizadores. • Dependiendo de las versiones pueden tener: • – Memoria EEPROM o OTPROM. • – Memoria RAM. • – Entradas/Salidas digitales. • – Temporizadores. • – Generadores PWM (modulación de anchura de pulso). • – Contadores. • – Puerto de Comunicaciones síncronas y asíncronas.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • PIC (MicroChip) • Los microcontroladores PIC son populares desde hace más de 20 años. • Fueron los primeros microcontroladores RISC: • – El diseño RISC es más sencillo, lo que permite añadir más características a bajo precio. • Tiene pocas instrucciones (33 instrucciones el 16C5X mientras que el Intel 8048 tiene más de 90). • Características hardware: • – Tiene arquitectura Harvard: • Buses de instrucciones y datos separados lo que permite el acceso simultáneo a las instrucciones y a los datos, y el solapamiento de algunas operaciones para incrementar las prestaciones de proceso. • Cauce segmentado. • Los microcontroladores PIC están ganando popularidad debido a: • El chip es pequeño, tiene pocas patillas. • Muy bajo consumo. • Bajo Costo. • – Pueden ser usados en áreas en las que antes se pensaba que eran inapropiados.
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • PIC (MicroChip) –Cont.- • Existen varias líneas : • PIC10 • PIC12 • PIC16 (La línea 16C5X es la línea descendiente del diseño original PIC, está limitada y se ha quedado obsoleta con la línea 16CXX) • PIC17 (obsoleta, sustituida por la PIC18) • PIC18
INTRODUCCIÓN A LOS MICROCONTROLADORES • Familias de Microcontroladores • PIC (MicroChip) –Cont.- • La línea PIC18 es la más extendida actualmente. • Los databook de Microchip para microcontroladores PIC tienen una documentación completa de la manera de programarlos que otros fabricantes solo suministran a clientes especiales.