Upload
others
View
21
Download
0
Embed Size (px)
Citation preview
2
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
• 2.1 Introducción• 2.2 Características• 2.3 Los microcontroladores más utilizados• 2.4 Lenguajes de programación• 2.5 Herramientas de desarrollo
3
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
• Los microcontroladores están adquiriendo mayor presencia en nuestra vida cotidiana sin que aparentemente notemos su presencia. 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, los televisores, los teléfonos móviles, las consolas de videojuegos...
2.1. Introducción
4
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
• Controlador: dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo, el controlador que regula elfuncionamiento de un horno.
• Microcontrolador: un circuito integrado de alta escala de integración que incorpora la mayor parte de los elementos que configuran un controlador.
2.1. Introducción
Controlador y microcontrolador
5
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
• Un microcontrolador dispone normalmente de los siguientes componentes:– Procesador o UCP (Unidad Central de Proceso)– Memoria RAM para Contener los datos.– Memoria para el programa tipo ROM/PROM/EPROM.– Líneas de E/S para comunicarse con el exterior.– Diversos módulos para el control de periféricos (temporizadores,
Puertas Serie y Paralelo, CAD: Conversores Analógico/Digital, CDA: Conversores Digital/Analógico, etc.).
– Generador de impulsos de reloj que sincronizan el funcionamientode todo el sistema.
2.1. Introducción
Microcontrolador
6
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.1. Introducción
Diferencia entre microprocesador y microcontrolador
El microcontrolador es un sistema cerrado. Todas las partes del computador están contenidas en su interior y sólo salen al exterior las líneas que gobiernan los periféricos.
μCPeriféricos Periféricos
Microcontrolador
7
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.1. Introducción
Diferencia entre microprocesador y microcontroladorUn microprocesador es un sistema abierto
porque su configuración es variable de acuerdo con la aplicación a la que se destine.
μP
Periféricos Periféricos
Microprocesador
Memoria Controlador 1 Controlador 2
Bus Direcciones
Bus Datos
Bus Control
8
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.1. Introducción
Aplicaciones de los Microcontroladores
• Aparatos electrodomésticos: microondas, frigoríficos, hornos, TV, reproductores y grabadores de CD y DVD, equipos de sonido, teléfonos,...
• Equipos informáticos: impresoras, módems, unidades de disco, ratones, teclados,..
• Automóviles: mando de sistemas del automóvil (ABS, inyección, encendido, climatizador..)
• Domótica: sistemas antirrobo, climatizadores,..
• Instrumentación: equipos de medida
• Robótica
9
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.1. Introducción
El Mercado de los Microcontroladores
• se venden cientos de microcontroladores por cada microprocesador• existe una gran diversidad de microcontroladores:clasificación según
tamaño palabra en microcontroladores de 4, 8, 16 ó 32 bits• la totalidad de los microcontroladores actuales se fabrican con
tecnología CMOS
Distribución de ventas según aplicación
33% computadores y periféricos
25% electrodomésticos, juegos, TV,..16% comunicaciones
16% industria
10% automoción
10
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Todos los microcontroladores deben disponer de los bloques esenciales: procesador (CPU), memoria de datos y de instrucciones, líneas de E/S, oscilador de reloj y módulos controladores de periféricos.
Sin embargo, cada fabricante intenta enfatizar los recursos más idóneos para las aplicaciones a las que se destinan preferentemente.
2 tipos de arquitecturas:• Von Neumann• Harvard
11
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
El modelo básico de arquitectura empleada por los computadores digitales fue establecida en 1945 por VonNeumann.
Este tipo de arquitectura consta de los siguientes bloques:• Memoria principal• Unidad aritmético-lógica• Unidad de control• Unidad de entrada/salida
Arquitectura: Von Neumann
12
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Arquitectura: Von Neumann
UNIDADARITMÉTICO-
LÓGICA
MEMORIAPRINCIPAL
UNIDAD DE CONTROL
PeriféricoRegistros
UN
IDA
D D
E EN
TRA
DA
/SA
LID
A
Periférico
Periférico
Periférico
Periférico
Registros
13
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
• Memoria principal: se emplea para almacenar datos o instrucciones. Se compone de una serie de celdas a cada una de las cuales se accede a través de una dirección. Cada celda estácompuesta de un número de bits que nos da el ancho de palabra de la memoria.
• Unidad aritmético-lógica: permite realizar las operaciones elementales (AND, OR, NAND, NOR, suma, resta, etc.). Estas operaciones las realiza con datos procedentes normalmente de la memoria y los resultados parciales los almacena o no temporalmente en algunos registros que suele tener la propia unidad aritmética. Las operaciones básicas que puede realizar un computador se dividen en operaciones lógicas y operaciones aritméticas. Ambos tipos de operaciones se realizan dentro de esta unidad.
• Unidad de control: se encarga de generar las señales necesarias para que todo el computador ejecute las instrucciones leídas de la unidad de memoria. La unidad de control es la encargada de leer de forma consecutiva las instrucciones (que se encuentran almacenadas en la unidad de memoria), y generar las señales eléctricas necesarias para proceder a la ejecución de cada una de estas instrucciones. Es la unidad que gobierna y gestiona el comportamiento de un computador.
Arquitectura: Von Neumann
14
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
• Unidad de entrada/salida: realiza la transferencia de información con el exterior, con las unidades que se conocen con el nombre de periféricos.
• Buses: caminos que unen los distintos bloques del computador y a través de los cuales circulan los datos y las instrucciones. Dependiendo del tipo de información que se trate podemos hablar de diferentes caminos:
• Bus de datos: circulan los datos de las operaciones que se van a efectuar.• Bus de direcciones: circulan las direcciones de memoria donde se encuentra
almacenado algún tipo de información a la que se desea acceder.• Bus de control: circulan las señales de control generadas por la unidad de
control para la ejecución de las instrucciones.
Arquitectura: Von Neumann
15
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
• La agrupación de algunos bloques funcionales del computador como son la unidad de control, la unidad aritmético-lógica y los registros recibe el nombre de unidad central de proceso (CPU).
Arquitectura: Von Neumann
UNIDADARITMÉTICO-
LÓGICA
Registros
UNIDAD DE CONTROLRegistros
CPU(Central Process Unit)
16
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
La arquitectura de von Neumann se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones de forma indistinta. A dicha memoria se accede a través de un sistema de buses único (direcciones, datos y control).
Arquitecturas: Von Neumann vs. Harvard
La arquitectura Harvard dispone de dos memorias independientes una, que contiene sólo instrucciones y otra, sólo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultáneamente en ambas memorias.
17
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Arquitectura: Von Neumann
CPU DATOSE
INSTRUCCIONES
MEMORIA
datos
control
instrucciones
El Motorola 68HC11 tiene una arquitectura tipo Von Neumann
18
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Arquitectura: Harvard
CPUINSTRUCCIONES
MEMORIA
DATOS
MEMORIA
datos
controlcontrol
instrucciones
Los microcontroladores PIC tienen una arquitectura tipo Harvard
19
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Es el elemento más importante del microcontrolador y determina sus principales características, tanto a nivel hardware como software.
Se encarga de direccionar la memoria de instrucciones, recibir el código OP de la instrucción en curso, su decodificación y la ejecuciónde la operación que implica la instrucción, así como la búsqueda de los operandos y el almacenamiento del resultado.
Procesador o CPU
Tipos:CISC (Computadores de Juego de Instrucciones Complejo)RISC (Computadores de Juego de Instrucciones Reducido)SISC (Computadores de Juego de Instrucciones Específico)
20
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Memoria de programa: no volátil, tipo ROM (Read Only Memory)Memoria de datos: volátil, tipo RAM (Random Access Memory)
Tipos de memoria no volátil (ROM):• ROM con máscara• OTP (One Time Programmable)• EPROM (Erasable Programmable Read Only Memory)• EEPROM (Electrical Erasable Programmable Read Only
Memory)• FLASH
Tipos de memorias
21
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
Puertas de E/S: patitas de la cápsula del microcontrolador, que lo comunican con los periféricos exteriores
Puertas de E/S y reloj
Reloj principal: un circuito oscilador que genera una onda cuadrada de alta frecuencia, que configura los impulsos de reloj usados en la sincronización de todas las operaciones del sistema.
Generalmente, el circuito de reloj está incorporado en el microcontrolador y sólo se necesitan unos pocos componentes exteriores para seleccionar y estabilizar la frecuencia de trabajo. Dichos componentes suelen consistir en un cristal de cuarzo junto a elementos pasivos o bien un resonador cerámico o una red R-C.
Aumentar la frecuencia de reloj supone disminuir el tiempo en que se ejecutan las instrucciones pero lleva aparejado un incremento del consumo de energía.
22
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.2. Características
• Temporizadores o “Timers”.• Perro guardián o “Watchdog”.• Protección ante fallo de alimentación o “Brownout”.• Estado de reposo o de bajo consumo.• Conversor A/D.• Conversor D/A.• Comparador analógico.• Modulador de anchura de impulsos o PWM.• Puertas de E/S digitales.• Puertos de comunicación: UART, USART, USB,
CAN,...
Recursos especiales
23
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.3. Los microcontroladores más conocidos
Esta es una lista fabricantes de microcontroladores:
•1 AMCC •2 Altera•3 Atmel•4 Charmed Labs •5 Cypress MicroSystems•6 Dallas Semiconductor •7 Freescale Semiconductor •8 Fujitsu •9 Holtek•10 Infineon•11 Intel •12 Lattice Semiconductor •13 Microchip Technology •14 National Semiconductor •15 NEC •16 Parallax •17 Philips Semiconductors •18 Rabbit Semiconductor •19 Renesas Technology •20 Silabs•21 Silicon Motion •22 STMicroelectronics•23 Texas Instruments •24 Toshiba •25 Western Design Center •26 Ubicom•27 Xemics•28 Xilinx•29 ZiLOG
PIC
24
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.3. Los microcontroladores más conocidos
Los microcontroladores más comunes:
PIC
25
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.3. Los microcontroladores más conocidos
Microchip PIC
•Familia 8 bit: PIC10, PIC12, PIC16, PIC18•Familia 16 bit: PIC24F, PIC24H,dsPIC30, dsPIC33•PIC32
16F84 16F87X
26
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES2.3. Los microcontroladores más conocidos
¿Qué microcontrolador emplear?
• Factores a considerar según la aplicación:– Costes– Procesamiento de datos– E/S– Consumo– Memoria– Ancho de palabra– Diseño de la placa
27
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.4. Lenguajes de programación
Lenguaje máquina: representación del programa tal como la entiende el microcontrolador
0101000011111110000
Lenguaje ensamblador: representación alfanumérica del lenguaje máquina, lo que facilita su lectura.
clrf PORTAbcf STATUS, RP0
Lenguajes de alto nivel. Lenguaje C
28
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.5. Herramientas de desarrollo
Ensamblador: El programa ensamblador es un software que se encarga de traducir los nemónicos y símbolos alfanuméricos del programa escrito en ensamblador por el usuario a código máquina.
MPASM
Compilador: El programa compilador es un un software que se encarga de traducir el programa escrito en C el usuario a código máquina.
MikroC, CCS
Simulador: Son capaces de ejecutar en un PC programas realizados para el microcontrolador. Los simuladores permiten tener un control absoluto sobre la ejecución de un programa, siendo ideales para la depuración de los mismos
MPSIM
29
Tema 2: INTRODUCCIÓN A LOS MICROCONTROLADORES
2.5. Herramientas de desarrollo
Entornos de desarrollo:
MPLAB (incluye MPASM y MPSIM)
Proteus
Placas de evaluación: Se trata de pequeños sistemas con un microcontrolador ya montado y que suelen conectarse a un PC desde el que se cargan los programas que se ejecutan en el microcontrolador. Las placas suelen incluir visualizadores LCD, teclados, LEDs, fácil acceso a los pines de E/S, etc.
EasyPIC