Publicado el 8 de Febrero del 2021
555 visualizaciones desde el 8 de Febrero del 2021
753,0 KB
19 paginas
Creado hace 15a (18/02/2010)
Características
de los uC PIC
MICROPROCESADORES II
Repasando...
• ¿Qué son los Microcontroladores?
Son circuitos integrados que incorporan todos los bloques funcionales de
un Sistema Microprocesador en un único encapsulado
• ¿Qué necesitan para funcionar?
Sólo una tensión continua estable (5V, 3.3V, 2.5V, 1.5V...) y un oscilador
Sólo una tensión continua estable (5V, 3.3V, 2.5V, 1.5V...) y un oscilador
• ¿Qué hacen?
Interpretan (decodifican) combinaciones de bits (instrucciones)
y generan señales digitales internas y/o externas
• ¿Para qué?
Para “ejecutar” de manera continua una secuencia de instrucciones
(programa) que permita controlar un sistema o subsistema electrónico
2
Qué ventajas tiene?
Sistema Microprocesador (varios C.I. en una PCB)
Microcontrolador
(único C.I.)
3
A qué se parece?
Tarjeta de Sistema
Microprocesador
para control
C.I. Microcontrolador
(“casi todo” ahí dentro)
4
Dónde tenemos microprocesadores y microcontroladores?
Evolución Microprocesadores:
Computadores
75 Millones Microprocesadores/año
¿
Evolución Microcontroladores:
Sistemas Empotrados
Sistemas Empotrados
2500 Millones Microcontroladores/año
5
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.
“Empotrado” también quiere decir oculto o escondido. Cuando se usa un PC, uno es
consciente de que dentro está un microprocesador. ¿Y cuando usamos un teléfono móvil,
un reloj, una calculadora, una lavadora, un cargador de baterías, un mando a distancia,
un secador de pelo, un lavaplatos, un equipo de música,...?
• Los microcontroladores de 8 bits dominan en la mayoría de las aplicaciones
• El microcontrolador es el núcleo del sistema electrónico versátil de bajo coste y
reducido tamaño que es capaz de detectar las señales de entrada y generar las salidas
de un equipo, sistema o instrumento
• Por su reducido tamaño y coste permiten la fácil
“inteligencia” distribuida a lo largo de sistemas más complejos
implantación de sistemas de
• Los microcontroladores son los semiconductores más abundantes de todos en la
actualidad.
6
En donde puedo usar un microcontrolador? Cuantos?
7
Quien los fabrica?
•INTEL
•MOTOROLA
•HITACHI
•PHILIPS
•SGS-THOMSON
•SGS-THOMSON
8048,8051,80C196,80386
6805,68HC11,68HC12
HD64180
8051
ST-62XX
ST-62XX
•NATIONAL SEMICONDUCTOR
COP400,COP800
•ZILOG
•TEXAS INSTRUMENTS
•TOSHIBA
•MICROCHIP
Z8,Z86XX
TMS370
68HC11
PIC
8
Microcontroladores PIC
• Arquitectura Harvard: buses internos separados para memoria de datos
(8 bits) y de programa (12, 14 ó 16 bits depende de la familia)
• Microprocesador RISC: juego de intrucciones reducido
• Estructura pipe-line: durante la ejecución de una instrucción, se está
accediendo a la memoria de programa para traer la siguiente instrucción
a ejecutar. En cuanto se acaba una instrucción, ya se dispone de la
a ejecutar. En cuanto se acaba una instrucción, ya se dispone de la
siguiente para ejecutar (salvo que se trate de un salto o llamada a subpr.)
• Todas las instrucciones ocupan una posición de memoria de programa
• Todas las instrucciones se ejecutan en un ciclo de instrucción = 4 ciclos de
reloj (salvo las instrucciones de salto)
• Ortogonalidad de los registros: se opera entre el registro de trabajo W
y cualquier otro registro, el resultado puede almacenarse en el citado
registro o en W
9
Ventajas de los PIC de Microchip
• Eficiencia del código: permiten una gran compactación de los programas
• Rapidez de ejecución: a frecuencia de 20MHz -> 5 millones de instr./seg.
• Seguridad en acceso por la separación de memoria de datos y de programa
• Juego reducido de instrucciones y de fácil aprendizaje
• Juego reducido de instrucciones y de fácil aprendizaje
• Compatibilidad de pines y código entre dispositivos de la misma familia o
incluso de familias distintas
• Gran variedad de versiones en distintos encapsulados (desde 8 hasta 84 pines)
sin reducción de las prestaciones internas (muy versátiles)
• Posibilidad de protección del código muy fiable
• Herramientas de desarrollo software y hardware abundantes y de bajo coste
10
Las 5 Familias de Microcontroladores PIC
• Familia PIC12CXXX/12FXXX (12/14 bits)
13 Dispositivos
• Familia PIC16C5X (12 bits)
• Familia PIC16CXXX/16FXXX (14 bits)
• Familia PIC17CXXX (16 bits)
• Familia PIC18CXXX/18FXXX (16 bits)
• Familia PIC18CXXX/18FXXX (16 bits)
11 Dispositivos
95 Dispositivos
8 Dispositivos
48 Dispositivos
48 Dispositivos
TOTAL:
¡ 175 Dispositivos !
Y Contando
Versiones de Memoria de Programa:
OTP, EPROM, EEPROM y FLASH
11
Módulos Internos Disponibles en la Familia Media
Hacia Adelante
• Puertos de Entrada/Salida
• Puerto Esclavo Paralelo (PSP)
• Temporizadores/contadores (TMR0, TMR1, TMR2)
• Captura / Comparación / PWM (CCP1 y CCP2)
• Captura / Comparación / PWM (CCP1 y CCP2)
• Conversión Analógica / Digital (A/D)
• Transmisor Receptor Asíncrono Síncrono Universal (USART ó SCI)
• Puerto Serie Síncrono Básico ó Maestro(BSSP ó MSSP)
• Memoria EEPROM de datos
• FLASH EEPROM de programa modificable desde el código
12
Diseño Hardware
Conectar al micro todo lo que necesita para funcionar e interaccionar
con el mundo exterior
• Definición de las señales de Entrada, Salida y Alimentaciones
• Etapas de Adaptación/Acondicionamiento Eléctrico de Señales
• Selección de los módulos del microcontrolador a utilizar y pines
• Edición del firmware, simulación y depuración.
• Diseño de la Placa de Circuito Impreso (PCB)*
• Diseño de la Placa de Circuito Impreso (PCB)*
• Montaje y ensamblado*
• Montaje y ensamblado*
CAD-CAE
Realización
+ Montaje
13
Diseño Firmware
El micro sin un programa cargado en su memoria no hace absolutamente nada,
es necesario un conjunto ordenado de intrucciones eficientes para que el
sistema opere como se desea.
• Diseño del programa y escritura del código fuente en ensamblador o en C
• Pruebas, verificación y modificación del código:
Simulación del Programa (puro software)
Emulación dentro del Circuito de Aplicación (software y hardware)
Emulación dentro del Circuito de Aplicación (software y hardware)
• Grabación del código máquina en la memoria interna del microcontrolador
• Grabación del código máquina en la memoria interna del microcontrolador
Emulación o
Depuración
Edición del código,
1ª depuración y
simulación
Grabación del micro
14
Herramientas para los uC PIC
•Entorno de Desarrollo: MPLAB IDE (Integrated Development Environment)
• Herramientas para generar código máquina:
De Microchip:
• MPASM: Ensamblador para generar código máquina absoluto o reubicable
• MPLINK: Montador de Enlaces para ensamblador y MPLAB-C17
• MPLIB: Biblioteca de códigos pre-compilados para utilizar con MPLINK
• MPLAB-C17: Compilador de C para la familia PIC17Cxx
• MPLAB-C17: Compilador de C para la familia PIC17Cxx
• MPLAB-C18: Compilador de C para la familia PIC18Cxx
De Otras compañías:
• CCS PIC C:
• HI-TECH PIC C:
• IAR PIC C:
• PBASIC:
•PROTON PICBASIXPRO
Compilador de C
Compilador de C
Compilador de C
Intérprete de Basic de Parallax
Compilador de Basic
•Simuladores: MPLAB-SIM (incluido en MPLAB-IDE) y Proteus.
15
Otras Herramientas necesarias para los uC PIC
• Programadores/Grabadores de la memoria de los PIC
* PICSTART PLUS
* PROMATE II
* MPLAB-ICD2 también puede funcionar como programador
16
Cómo probamos?
Paso final: Grabar la memoria con el programa
e insertar el microcontrolador
Grabaremos con el ICD2
o con el PICSTART PLUS
¡Ya es autónomo!
17
El Programador ante los microcontroladores
• El programador para software de PC, parte de un “lujoso” hardware ya
cableado,
instalado y en funcionamiento: microprocesador, memoria y
dispositivos de E/S como el teclado, el ratón y el monitor. El desarrollo
de la aplicación obliga “únicamente” a tener que escribir el programa y
depurar los errores
• El programador para microcontroladores tiene que “diseñar y crear”
todo el
todo el
interface de E/S con el mundo exterior antes de iniciar la
interface de E/S con el mundo exterior antes de iniciar la
escritura del programa. La mayoría de los programas están hechos a
medida de una determinada aplicación y no son demasiado portables. Pero
como
coste de los
microcontroladores (incluyendo el teclado y el monitor), será necesario
seguir utilizando los microcontroladores en los sistemas empotrados
se hacen
todavía
no
PCs del
tamaño
y
• Las herramientas de desarrollo para diseños basados en micros serán
básicamente las mismas que para PC si sustituimos las librerías gráficas
por otras destinadas al manejo de los módulos del microcontrolador.
18
¿Programar en lenguaje C o en ensamblador?
• La ventaja del C frente al ensamblador es la rapidez en el desarrollo de las
aplicaciones y la comodidad a la hora de utilizar las funciones de manejo de los
módulos internos (podemos pasar de 2 ó 3 días a 1 ó 2 semanas con aplicaciones
para el manejo de un LCD).
• Las ventajas del ensamblador sobre el C residen en la eficiencia y lo compacto
que resulta el código (hasta un 80% menor en tamaño). En el ensamblador de los
microcontroladores PIC, una instrucción ocupa una única posición de la memoria
microcontroladores PIC, una instrucción ocupa una única posición de la memoria
de programa. Una simple instrucción en C que nos ocupa una única línea de nuestro
código fuente puede traducirse en varias posiciones de memoria de programa
(como ejemplo introduzca unas cuantas condiciones en un “if...).
• Además, cuando uno utiliza la programación en ensamblador, se dispone de un
control total sobre el tiempo de ejecución de las instrucciones, lo que puede
resultar especialmente importante en ciertas aplicaciones en tiempo real.
El punto de partida debe ser por tanto el Ensamblador
19
Comentarios de: Características de los uC PIC (0)
No hay comentarios