Microcontroladores
1
Temas: •
•
1.1 Definición de procesadores digitales. 1.2 1.2 Apli Aplica caci ción ón de los proc proces esad adore oress en el entorno socioeconómico.
2
•
¿Qué es un Microcontrolador?
3
•
“Un microcontrolador es un circuito integrado que internamente está construido en su generalidad por un sistema mínimo; pero además, incorpora algunos dispositivos periféricos en un mismo chip”.
•
A diferencia de un sistema mínimo, un microcontrolador tiene la memoria de programa y de datos, fija; es decir que no existe la posibilidad de aumentarla y/o disminuirla. Estos circuitos han sido creados originalmente, con la idea de resolver problemas específicos de control.
Diferencias entre un Procesador y un Microcontrolador •
•
Un microprocesador es un sistema abierto con el que puede construirse un computador con las características que se desee, acoplándole los módulos necesarios. Un microcontrolador es un sistema cerrado que contiene un computador completo y de prestaciones limitadas que no se pueden modificar.
•
La Arquitectura Von Neumann
•
La Arquitectura Harvard
El microprocesador y microcontrolador reciben y envían datos en forma de código binario (ceros y unos lógicos), que representan niveles de voltaje generalmente de entre O a 5 volts y que corresponden a los niveles lógicos TTL/CMOS, lo que permite a los dispositivos, tener comunicación con externos y al mismo tiempo recibir de ellos información, para analizarla o tratarla, realizando esta función por medio de puertos de entrada y salida.
•
•
El conjunto de datos que reciben pueden tener diferentes longitudes y puede ser desde un Bit (1 ó 0), Byte (8 bits), Word (16 bits), Double Word (32 bits) hasta Quad Word (64 bits) o más.
•
Al construir un programa, el diseñador lo escribe con el conjunto de instrucciones específicas para el microcontrolador y debe colocarlo dentro del dispositivo para que este lo pueda ejecutar automáticamente.
•
El programa que ejecuta el microprocesador y microcontrolador se compone de un conjunto finito de instrucciones (grupo de órdenes, que el programador utiliza para indicarle como actuar ante cierta entrada de datos y de qué manera procesarlos cuando se encuentran en memoria).
Unidades Básicas de un µc Memoria
Núcleo
De programa (ROM)
ALU
De datos (RAM)
Puertos Entradas
Unidad de control Oscilador
Salidas
Sistemas Embebidos •
Un sistema embebido es un circuito especializado, diseñado para dar una solución óptima a la aplicación que se quiere resolver. A diferencia con una computadora, este tiene dentro únicamente lo necesario para llevar a cabo una tarea.
•
También se le llama sistema embebido porque generalmente el sistema se encuentra construido en la misma pastilla de silicio o dentro de un mismo chip, como ocurre con un microcontrolador
Empresa
8 bits
12 bits
14 bits
Atmel
AVR (mega y tiny),89Sxxxx familia similar 8051
Freescale (antes Motorola )
68HC05, 68HC08, 68HC11, HCS08
x
x
Intel
MCS-48 (familia 8048) MCS51 (familia 8051) 8xC251
x
x
16 bits
32 bits
64 bits
SAM7 (ARM7TDMI), SAM3 (ARM Cortex-M3) , SAM9 (ARM926) 68HC12, 68HCS12, 68HCSX12, 68HC16
683xx, PowerPC Architecture ,Cold Fire
x
MCS96, MXS296
x
x
Microchip
Familia10f2xx Familia12Cxx Familia 12Fxx, 16Cxx y 16Fxx 18Cxx y 18Fxx
PIC24F, PIC24H y dsPIC30FXX,dsPIC 33F con motor dsp integrado
PIC32
x
Renesas (antes Hitachi, Mitsubishi y NEC)
78K,H8
H8S,78K0R,R8C,R 32C/M32C/M16C
RX,V850,SuperH, SH-Mobile,H8SX
x
STMicroelectroni cs
ST 62,ST 7
Texas Instruments
TMS370, MSP430
C2000, CortexM3
Arquitectura de Microcontrolador •
1. Procesador
•
2. Memoria no volátil para contener el programa
•
3. Memoria de lectura y escritura para guardar los datos
•
4. Líneas de EIS para los controladores de periféricos:
•
–
a) Comunicación paralelo
–
b) Comunicación serie
–
c) Diversas puertas de comunicación (bus l2ºC, USB, etc.)
5. Recursos auxiliares.
Recursos Auxiliares Según las aplicaciones a las que orienta el fabricante cada modelo de microcontrolador, incorpora una diversidad de complementos que refuerzan la potencia y la flexibilidad del dispositivo. Entre los recursos más comunes se citan a los siguientes: a) Circuito de reloj, encargado de generar los impulsos que sincronizan el funcionamiento de todo el sistema. b) Temporizadores, orientados a controlar tiempos. c) Perro Guardián («watchdog»), destinado a provocar una reinicialización cuando el programa queda bloquead o. d) Conversores AD y DA, para poder recibir y enviar señales analógicas. e) Comparadores analógicos, para verificar el valor de una señal analógica. f) Sistema de protección ante fallos de la alimentación
Aplicaciones. •
•
•
•
•
•
En cualquier problema en el cual se requiera un instrumento digital compacto que sea capaz de realizar funciones como las siguientes, es posible pensar en sistema basado en un μcc: secuenciamiento, codificación/decodificación, monitoreo, adquisición de datos, señalización, procesamiento de señales, control retroalimentado, temporización, cálculos aritméticos sencillos, comunicaciones, automatización, despliegue digital, control on - off, etc
Clasificación de los Microcontroladores •
•
•
•
•
Según la longitud del bus de datos Según sus recursos Según el Set de Instrucciones Según su Arquitectura Interna Según el fabricante
Según la longitud del bus de datos •
Microcontroladores de 8 bits, de 16 bits o de 32 bits. –
A mayor longitud del bus de datos, mayor será la eficiencia del microcontrolador en operaciones con datos grandes. Pero al mismo tiempo la complejidad del chip y por ende su costo también aumentarán. Por ejemplo, para los dispositivos multimedia, que procesan datos de vídeo y audio, un bus de datos de 8 bits sería insuficiente.
Según sus recursos •
Los hay desde los que tienen los recursos mínimos hasta los que cuentan con los periféricos más sofisticados, como módulos CAN (para comunicaciones robustas entre varios microcontroladores), módulos para conectarse a los ordenadores vía USB o funciones hardware para el procesamiento digital de señales, para trabajar con datos multimedia. Los microcontroladores con esta última capacidad se conocen con el nombre de DSP (Digital Signal Processor).
Según el Set de Instrucciones •
•
Con Instrucciones CISC (Complex Instruction Set Computer). El set de instrucciones CISC es inherente a los primeros microcontroladores que aparecieron en el mundo, los cuales estaban inspirados en los procesadores de los grandes computadores de la época. Es complejo porque consta de muchas instrucciones, complicadas y difíciles de recordar a la hora de programar en lenguaje ensamblador. Además, al crecer el número de instrucciones también crecerán los códigos de las instrucciones, lo cual deriva en una mella en la eficiencia del microcontrolador.
Según el Set de Instrucciones •
•
•
Con Instrucciones RISC (Reduced Instruction Set Computer) Estos microcontroladores cuentan con instrucciones sencillas y en un número mínimo. Ello permite que la programación en ensamblador sea una labor cómoda y esté al alcance de todos. Sin embargo, cuando se desarrollan proyectos mucho más complejos, el uso del lenguaje ensamblador se torna cada vez más engorroso. Entonces se prefiere optar por los compiladores de alto nivel, para los cuales un set RISC no es obstáculo.
Según su Arquitectura Interna •
•
Microcontroladores con Arquitectura de Von Neumann. Microcontroladores con Arquitectura Harvard
Según el fabricante •
Hay muchas marcas de microcontroladores en el mercado. De ellas solo mencionaré las que creo más populares. A veces un mismo tipo de microcontrolador lo suelen proveer diversos fabricantes, por lo que ésta no es una clasificación estrictamente metódica
FUNCIÓN 1ª
LA IDEA
2ª
EDICIÓN PROGRAMA FUENTE
3ª
ENSAMBLAR O COMPILAR
4ª
SIMULACIÓN DEL SOFTWARE
5ª
DEPURACIÓN
6ª
GRABACIÓN DEL µC
7ª
SIMULAR EL HARDWARE Y EL SOFTWARE EN TIEMPO REAL
8ª
DEPURACIÓN
TRABAJO A REALIZAR Pensar
LA CABEZA
Editar el programa
EDITOR
Traducir el programa en lenguaje fuente a código binario ejecutable Simular el comportamiento del programa
ENSAMBLADOR O COMPILADOR SIMULADOR SOFTWARE TODAS LAS ANTERIORES
Corregir los defectos del programa
9ª
MONTAJE DEL PROTOTIPO
10ª
DEPURACIÓN
11ª
PRODUCTO FINAL
HERRAMIENTA NECESARIA
Grabar el programa depurado en la memoria de instrucciones del microcontrolador Conectar el µC grabado a los periféricos fundamentales y analizar su comportamiento
SISTEMA DE DESARROLLO
Corregir errores en el programa y el hardware
LAS ANTERIORES
Construir un prototipo completo con el µC grabado y todos sus periféricos Corregir errores de Hardware y software en el prototipo
PLACA DE PROTOTIPOS TODAS LAS ANTERIORES
Montaje definitivo
EL SOLDADOR
GRABADOR
Características de cada fase de un proyecto y herramientas que se utilizan
Reloj del sistema •
Es un elemento vital que se utiliza para sincronizar todas las operaciones que ocurren dentro de un microcontrolador. Básicamente se trata de un generador de pulsos con una frecuencia muy precisa, la cual está definida dependiendo del oscilador interno del dispositivo y un oscilador de cristal de cuarzo o un resonador.
Tarea • •
•
•
Equipo de 3 Alumnos. Investigar 2 proyectos o problemas donde pudiera aplicarse un Microcontrolador, Los 2 proyectos o problemas deben ser de diferente complejidad. Exponer y mencionar 2 microcontroladores que pudieran utilizar (Marca, Caracteristicas, Recursos que tiene) y Justificar el uso de ese microcontrolador de acuerdo con el proyecto o problema elegido. Enviar Trabajo de Exposición o Presentación, a plataforma schoology Ing. Marcelo Alberto Hernández Martínez
Material. Microcontrolador Atmega16 o Atmega32 8 leds. Resistencias de 330Ω Programador Universal y/o Atmel Usb ISP
• • • •
31