1
Diseño Basado en Microcontroladores.
Tema 2: Microcontroladores. (2 horas)
2.1. Introducción.
2.2. Estructuras específicas para el control de sistemas.
2.3. Características generales de los microcontroladores.
2.4. Familias de microcontroladores.
2.5. Aplicaciones básicas. Elección del microcontrolador.
http://www.el.uma.es/marin/
2
Tema 2. Microcontroladores.
Objetivos específicos:
-Diferenciar entre microprocesador y microcontrolador.
-Conocer los principales fabricantes de microcontroladoresy sus familias.
-Conocer los campos de aplicación de los microcontroladores.
- Decidir entre microprocesador-microcontrolador yelegir el más apropiado para un determinado diseño.
3
Bibliografía recomendada.
[González, 1992]. El capítulo de introducción trata de forma clara,aunque un poco esquemática los conceptos.[WEB]. En las páginas Web de los fabricantes se pueden obtenerinformación detallada de las distintas familias de microcontroladores
y notas de aplicación sobre diversos diseños.
Tratamiento didáctico específico.Es un tema descriptivo cuyo objetivo es situar a la asignatura tanto en lo que respecta a la necesidad del microcontrolador como a sus prestaciones y campos de aplicación. Puesto que en los demás temas se tratan con detalle la arquitecturay los distintos bloques de un microcontrolador, la exposición del tema será de tipo lección magistral.
Tema 2. Microcontroladores.
4
2.1. Introducción.
Un microcontrolador es un circuito integrado (IC, Integrated Circuit) digital
diseñado para aplicaciones que requieren de procesadores que realicen
cálculos aritmético-lógico de forma programada y de dispositivos que
lleven a cabo, por sí solos, las tareas propias de un sistema de control.(System-on-chip) (Embedded controller) http://www.embedded.com
Principales características:
- su bajo coste,- su alto grado de integración,- su simplificación de periféricos adicionales, y- su cada vez mayor capacidad y velocidad de ejecución- su cada vez mínimo consumo de potencia a un precio razonable.
5
8 8 8 8 8
PUERTOS DE ENTRADA/SALIDA
CPU
RELOJ RAM ROM
R0H R0L816 20
20
16
1616 x 16Multiplicador
Base Estático SB Pila Usuario USPPila Interrupciones ISP
Tabla Vector Interrup. INTB
Contador de Programa PC
Banderas
R0H R0LR1H R1L
R2R3
A0 (=R4)A1 (=R5)
Base Marco FB
PERIFÉRICOS
TIMERS
WaTchDog
PWM
DMAC
CONVERTIDORA-D Y D-A
UART’s
I2C
CRC
6
2.2. Estructuras específicas para el control de sistemas. 1/2
7
DIAGRAMA DE BLOQUES M16C 2/2
R0H R0LR0H R0LR1H R1L
R2R3
Address Reg. A0Address Reg. A1
Frame Base Reg. FB
Static Base Reg. SB
Vector Table INTB
Program Counter PC
Flag Register FLG
Stack Pointer
USP (User Stack Pointer)
ISP
Multiply circuit16X 16
ROM/Flash
256 K bytes
RAM
20 K bytes
MEMORIAS
P0
8
P1
8
P2
8
P3
8
P4
8
P5
8
P6
8P7 8
P8 8
P9 8
P10 8
Timer
5 x A Timer (16 bit)
6 x B Timer (16 bit)
Watch dog timer (20 bit)
DMAC 2 channel
D-A converter 8 bit 2 ch.
System clock generator
Xin - Xout
Xcin - Xcout
A-D converter(10 bit x 8 channelexpanded to 10 ch)UART / Clock
sync. serial I/O5 channels
CRC operationcircuit
I/O Ports
8
R0H R0L816 20
20
16
1616 x 16
Multiplier
Static Base User stack USP
Interrupt stack ISP
Interrupt Vector Table INTB
Program Counter PC
Flags
R0H R0L
R1H R1L
R2
R3
A0 (=R4)
A1 (=R5)
Frame Base
2.2. Estructuras específicas para el control de sistemas.
9
RAM
10 Kb
ROM
64 KbCRC
DAC
ADC
BIUDMAC
CPU
MULTIPLICADOR
TIMERS
B A
WDTINTERRUPCIONES
C
UART
BRG
BUS DATOS/DIRECCIONES
CONTROLBUS
2.3. Características generales.
10
8XC151SX
11
Itinerario de los M16C
2.4. Familias de microcontroladores. Itinerarios.
12
2.4. Familias de microcontroladores.Familias de microcontroladores de Renesas
7700(8-bits)
M16C/10
M16C/26, 26A, 28, 29M16C/20 Tiny
M16C/30P
M16C/30L
M16C/30M16C/30
M16C/62P
M16C/62 A, M, N
M16C/61
M16C/60
M16C/60
M16C/80
M32C/80 (CISC+RISC)
M16C(16-bits CISC)
M32R(32-bits CISC)
GRUPOSSERIESFAMILIAS
13
EmpaquetadoFP: rectangular 100 pinesGP: cuadrado 100 pines
M 3 0 6 0 0 S 8 - XXX FP
Serie o Grupo 60/62 Capacidad ROM:4: 32 Kbytes8: 64 KbytesA: 96 KbytesC: 128 KbytesG: 256 KbytesW: 320 KbytesH: 384 KbytesJ: 512 Kbytes
Familia M16CTipo de memoria:
M: ROM máscaraS: ROM externaF: Flash
M 3 0 6 2 4 F G - XXX FP
Capacidad RAM
M30600S8FP / M30624FGAFP / M30626FHPFP
M 3 0 6 2 6 F H - XXX FP
Se omite paraversiones Flash
EmpaquetadoFP: rectangular 100 pinesGP: cuadrado 100 pines
M 3 0 6 0 0 S 8 - XXX FP
Serie o Grupo 60/62 Capacidad ROM:4: 32 Kbytes8: 64 KbytesA: 96 KbytesC: 128 KbytesG: 256 KbytesW: 320 KbytesH: 384 KbytesJ: 512 Kbytes
Familia M16CTipo de memoria:
M: ROM máscaraS: ROM externaF: Flash
M 3 0 6 2 4 F G - XXX FP
Capacidad RAM
M30600S8FP / M30624FGAFP / M30626FHPFP
M 3 0 6 2 6 F H - XXX FP
Se omite paraversiones Flash
Serie o Grupo 60/62 Capacidad ROM:4: 32 Kbytes8: 64 KbytesA: 96 KbytesC: 128 KbytesG: 256 KbytesW: 320 KbytesH: 384 KbytesJ: 512 Kbytes
Familia M16CTipo de memoria:
M: ROM máscaraS: ROM externaF: Flash
M 3 0 6 2 4 F G - XXX FP
Capacidad RAM
M30600S8FP / M30624FGAFP / M30626FHPFP
M 3 0 6 2 6 F H - XXX FP
Se omite paraversiones Flash
Figura 2.2. Descripción de los microcontroladores de Renesas
2.4. Familias de microcontroladores.
14
2.5. Aplicaciones básicas. 1/4
15
AUTOMOTIVE APPLICATIONS
Engine and gear boxair pressure injection,gas exhaust control,oil quality,automatic gear box control...
SafetyAirbag,tyre monitoring,anti-crash systems...
Chassis stabilisationAntiskid, active suspension.
..
Instrumentationair conditioning ,anti-theft system,guidance system...
2.5. Aplicaciones básicas. 2/4
16
• Speech compression & playback– #1 GSM codec algorithm– #2 ADPCM
• Telecom– DTMF detection & reception– Soft Modem V23 now V22
under dev– Caller ID– DES encryption
• I2C multimaster– S/W I2C for M16C/20
• Software UART• Security System
– Security/ Fire panel now– Access control under dev
• Flash on chip programming
• Using power down features
• Mask ROM correction• 3 phase motor control
– AC & DC brushless now, Switch Reluctance under development
• LCD control using I/O• Real time clock & Low
power operation
2.5. Aplicaciones básicas. 3/4
17
Aplicaciones básicas de los microcontroladores
Máquina de diálisisMonitores CardíacosBombas de InfusiónPrótesis
Médico
Sistemas de ControlSistemas de FabricaciónRobótica
Control Industrial
Routers, Hub, GatewayRedes
FAX, fotocopiadora, impresora, monitor, escaner
Oficina
T.V. digital y analógicaDVD, VCR, PDA, …JuguetesTeléfonos, teléfono móvilGPSTarjetas de crédito, de seguro médico, …Electrodoméstico gama blanca (lavadora, microondas, frigorífico, tostadora,…)
Electrónica de Consumo
Sistema de EncendidoSistema de ControlSistema de Frenado
Automovilístico
Dispositivos Empotrados (Aplicaciones)Sector
2.5. Aplicaciones básicas.
18
A Digital Cellular System
LCD
1 2 34 5 67 8 9* 0 #
Radio ControlRadio Control
RFRF
DSPTDMA
modulatorA0 /D0
A7 /D7
ROMROMA0
A1
A2
A3
A18
RAMRAMA0
A7
D0
D7
D0
D7
Data Bus
Address Bus
Multiplex Bus
32.768 kHz 10 MHz
M16C/60M16C/60
Mic
SPASSP/GA
ANT
PLL1PLL1
PLL2PLL2
TXDCLKS1
CLK1
AN0
ALECS2CS0CS3
A0 ~ A18
D0 /A0~ D7/A18
D0 ~ D7RDW
PORTPORT
SIOSIO
Key
3VLow PowerLow Power
Output multipleOutput multipleclockclock
Low PowerLow Power
BuiltBuilt--in pullin pull--upupresistorresistor
Small ROM CodeSmall ROM Codesize on Csize on CSmall PackageSmall Package
No need externalNo need externalcircuit to connect buscircuit to connect bus
2.5. Aplicaciones básicas. 4/4
19
2.5. Elección del Microcontrolador 1/7
La elección de un microcontrolador es más un arte que una ciencia. El poder de decisión es tremendamente extenso, se pueden elegir entre decenas de fabricante y dentro de éstos entre microprocesadores de la misma familia, y entre distintas arquitecturas (CISC, RISC, VLIW, super-escalar).
Reglas básicas:
-Nivel de rendimiento (performance or throughput): Se debe determinar el nivel de tiempo de funcionamiento en el peor de los casos. Los parámetros más importantes son el tiempo del ciclo de instrucción y la velocidad del bus, que deben ser evaluados conjuntamente. Un bus de mayor velocidad con el menor número de ciclos por instrucción es el que proporciona mayor rendimiento.
-Tamaño del código: La simplificación de código de programa pasa por disponer de eficientes conjuntos de instrucciones y de modos de direccionamiento (óptimas arquitecturas). Motorola 68HC12
20
2.5. Elección del Microcontrolador 2/7
Reglas básicas:
-Latencia de las interrupciones y rendimiento de los periféricos on-chip: Condicionados por las especificaciones de la aplicación.
- Consumo de potencia: En diversas áreas, el consumo de potencia es el factor determinante, incluso por encima del rendimiento (telefonía móvil, en aparatos médicos como audífonos, marcapasos, etc). La relación MIPS/watt es el parámetro utilizado para catalogarlos. Se produce un balance con respecto a los demás requerimientos del microcontrolador, por ejemplo, puede ser deseable una velocidad del bus más lenta para conseguir menor consumo de potencia. Los micros con tecnología CMOS normalmente tienen un menor consumo que los de tecnología NMOS. Es deseable usar microcos con modos standby o slepp que limitan el consumo de intensidad a varios microamperios cuando están inactivos los circuitos. El consumo de potencia, grosso modo, se suele repartir como un 25% para el procesador, un 50% para las memorias y el 25% restante para los periféricos. Actualmente, existe un amplio abanico de posibilidades de elección de microcontroladores de ultra-bajo consumo.
21
2.5. Elección del Microcontrolador 3/7
Reglas básicas:
- Adaptación a la aplicación: Una vez considerado los requerimientos del sistema en cuanto a rendimiento (elegir entre varias familias de microcontroladores), el siguiente paso es exigir que cumpla los requerimientos de funcionalidad de los periféricos: tamaño de memoria, tipo de memoria (EPROM, Flash, ...), número de timer, requerimientos de puertos de E/S, etc.
- Compatibilidad: Otro factor importante es contemplar la posibilidad de ampliación del diseño, esto es, que sea compatible con la siguiente generación y proporcione mayores prestaciones, como más memoria, mayor frecuencia,.... Esto evitará una nuevo re-diseño del sistema.
- Disponibilidad: Se debe asegurar la disponibilidad futura en el mercado, por ello es interesante que existan varios fabricantes del microprocesador, además de que esto proporciona un abaratamiento del coste del micro. Otras consideraciones son asegurarse de que el microcontrolador esté ya en producción y libre de fallos.
22
2.5. Elección del Microcontrolador 4/7
Reglas básicas:-Soporte y documentación: Debe existir un buen manual de usuario (User's Guide), hoja de datos software y hardware, la mayor cantidad de documentación de aplicaciones ya resueltas (Application Guide) con códigos fuente completos y artículos técnicos y científicos, así como un servicio de consultas accesible cómodamente y con respuestas rápidas (E-mail, fax, teléfono).
- Herramientas de desarrollo: Las herramientas de desarrollo, tanto de hardware como de software, son imprescindibles para el desarrollo de la aplicación. Se debe asegurar que sean de alta calidad, no tengan errores (bugs), y con memorias RAM y memorias programables, entre las que se están consolidando las memorias OTP y las FLASH. También, es importante la conexión con un ordenador vía el estándar serie RS-232 o USB. La mayoría de las herramientas de desarrollo actuales tratan de forma totalmente separada el diseño hardware y el diseño software, aunque se están desarrollando herramientas para el co-diseño hardware/software que permite un proceso integrado y más óptimo de cada una de las partes del diseño completo.
23
2.5. Elección del Microcontrolador 5/7
24
Fabricantes de Microcontroladores y DSP’s:Analog Devices: http://www.analog.com DSP SHARC, DSP BlackfinAdvanced RISC Machines: http://www.arm.com ARM11, ARM7, ARM9, CORTEXAtmel: http://www.atmel.com AT91, AVR, VLIW DSP+ ARM7DSP Group: http://www.dspg.com Palm, Teak, TeakliteFujitsu: http://www.fujitsumicro.com F2MC-16Infineon: http://www.infineon.com 80C16x, C166S V2 (XC16x), TriCoreIntel: http://www.intel.com/design 80x51, 80x86, 80x51Microchip Technology: http://www.mchip.com PIC18Cxxx, dsPICMotorola: http://www.motorola.com 68HCXX, 68K, Coldfire, DSP 56KNational Semiconductor: http://www.national.com CR16xNEC: http://www.nec.com 78Kx, V850Philips Semiconductor: http://www.semicopnductors.philips.com XARenesas (Hitachi+Mitsubishi): http://www.renesas.com 64180, H8/300, H8S/2000, SH, 7700, M16C/6X, M16C/80, M32CSTMicroelectronics: http://www.stm.com STxx, Super 10Texas Instruments: http://www.ti.com MSP430, C3x, C4x, C54x, C6xToshiba: http://www.toshiba.com TLCS-900XEMICS: http://www.xemics.com CoolRISC816, XE8000Zilog, Inc. : http://www.zilog.com Z80, Z180, eZ8 (Z8 Encore), eZ80
2.5. Elección del Microcontrolador 6/7
25
Empresas de software (RTOS y compiladores):
Cosmic: http://www.cosmic-software.comCMX: http://www.cmx.comHi-Tech: http://www.htsoft.comIAR Systems: http://www.iar.comKeil Software: http://www.keil.comParadigm Systems: http://www.devtools.comTasking: http://www.tasking.com
2.5. Elección del Microcontrolador 7/7
26
URL docente y de aplicaciones:
www.zilog.comZiLOG
www.xemics.comXEMICS
www.triscend.comTriscend
www.toshiba.comToshiba
www.ti.comTexas Instruments, Inc.
www.st.comSTMicroelectronics
www.smsc.comStandard Microsystems Corp.
Siemens Components, Inc. (See Infineon)
www.philipsmcu.comPhilips Semiconductors
www.nec.comNEC
http://www.die.upv.esUniversidad Politécnica de Valencia. Dpto. de Ingeniería Electrónica
http://www.disca.upv.esUniversidad Politécnica de Valencia. Dpto. de Informática de Sistemas y Computadores
http://petrus.upc.esUniversidad Politécnica de Cataluña. Dpto. de Ingeniería Electrónica
http://ceres.ugr.es/dpto/docencia.htmlUniversidad de Granada. Dpto. de Electrónica y Tecnología de Computadores
http://www.imse.cnm.es/~elec_esi/Universidad de Sevilla. Dpto. Electrónica y Electromagnetismo
semiconductor.hitachi.comHitachi Inc.
www.dspg.comDSP Group, Inc.
www.dalsemi.comDallas Semiconductor
www.atmel.com/journal/Archive.aspAtmel
www.analog.comAnalog Devices, Inc.
www.arm.comAdvanced RISC Machines Ltd. & Partners
www.amd.comAdvanced Micro Devices, Inc. (AMD)
URLEmpresa/Universidad/Dpto.
27
Bibliografía recomendada
[González, 1992]. El capítulo de introducción trata de forma clara,aunque un poco esquemática, los conceptos que se manejarán
en este tema.[WEB]. En las páginas Web de los fabricantes
se pueden obtener información detallada de las distintas familiasde microcontroladores y notas de aplicación sobre diversos diseños.
Referencias
[1] Bannatyne, R. y Viot, G., "Introduction to Microcontrollers, Part I“,Motorola Semiconductor Products Sector, Austin, Texas.
WESCON’97, Conference Proceeding, pp. 564-574.http://intl.ieeexplore.ieee.org/xpl/abs_free.jsp?arNumber=632384
[2] Axelson, J., "The Microcontroller Idea Book: Circuits, Programs& Applications featuring the 8052-BASIC",
Lakeview Research, 1997, ISBN 0-9650819-0-7.http://www.lvr.com