Sesion 2
Sesion 2
Sesion 2
MICROCONTROLADORES
Mundo exterior
Bus de Direcciones: selecciona origen o destino (unidireccional): M lneas: capacidad de direccionar 2M posiciones/direcciones Bus de Datos: transferencia de datos (bidireccional) N lneas: bits transmitidos en paralelo (tamao de los datos) Bus de Control: heterogneo, depende del microprocesador
3
El microprocesador como CPU Unidad de Control (CU) Decodificacin de las instrucciones Generacin de seales internas y externas al mP Unidad Aritmtico-Lgica (ALU) Operaciones aritmticas (suma, resta, complemento,...) Operaciones lgicas (AND, OR, NOT, EXOR,....) Registros Almacenamiento temporal de datos y resultados Acceso a memoria
Nueva carga del Contador de Programa: Instrucciones de Salto (Condicionales o Incondicionales) Llamadas a Subprogramas 6
Instrucciones de Salto
Nmero de Operandos
Procesadores de un operando CDIGO Operando Acumulador * Operando Acumulador
Registros tpicos
Contador de Programa (PC) Apunta a la instruccin a ejecutar a continuacin Se incrementa en ejecucin secuencial normal Carga en Saltos, Subprogramas e Interrupciones
Acumuladores
Estn relacionados con la ALU Puede haber ms de uno Registro de Estado o de Condiciones Asociado a resultados de la ALU Los bits son la base de los saltos condicionales Normalmente se mantiene el valor hasta que se usa la ALU de nuevo
10
11
12
13
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 ejecucin de una instruccin, se est accediendo a la memoria de programa para traer la siguiente instruccin a ejecutar. En cuanto se acaba una instruccin, ya se dispone de la siguiente para ejecutar (salvo que se trate de un salto o llamada a subpr.) Todas las instrucciones ocupan una posicin de memoria de programa Todas las instrucciones se ejecutan en un ciclo de instruccin = 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
14
Seguridad en acceso por la separacin de memoria de datos y de programa Juego reducido de instrucciones y de fcil aprendizaje Compatibilidad de pines y cdigo entre dispositivos de la misma familia o incluso de familias distintas Gran variedad de versiones en distintos encapsulados (desde 8 hasta 84 pines) sin reduccin de las prestaciones internas (muy verstiles) Posibilidad de proteccin del cdigo muy fiable Herramientas de desarrollo software y hardware abundantes y de bajo coste
15
Familia PIC16C5X
Encapsulados de 14, 18, 20 y 28 pines Instrucciones de 12 bits Juego de 33 instrucciones Es la familia base de partida de los PIC Existen versiones que permiten alimentacin a baja tensin (2.0V) y otras de hasta 15V (PIC16HV5XX) para alimentacin directa desde batera
16
Encapsulados desde 18 hasta 68 pines (DIP, SSOP, PLCC, QFP) Instrucciones de 14 bits en Memoria de Programa Juego de 35 instrucciones Gran variedad de mdulos integrados
Familia PIC17CXXX Encapsulados de 40 a 80 pines Memoria de Programa de 16 bits Juego de 58 instrucciones (oper. de multiplicacin por hardware) Posibilidad de direccionar memoria externa Familia PIC18CXXX/18FXXX Encapsulados de 18 a 80 pines Memoria de Programa de 16 bits Juego de 77 instrucciones (multiplicacin)
17
18
8K x 14 368 x 8
Tiene de todo !
Temporizadores Puerto Esclavo Paralelo Conversor A/D Mdulos CCP 20
256 x 8
SSP USART
CAD-CAE
Realizacin + Montaje
21
De Microchip:
MPASM: Ensamblador para generar cdigo mquina absoluto o reubicable MPLINK: Montador de Enlaces para ensamblador y MPLAB-C17 MPLIB: Biblioteca de cdigos pre-compilados para utilizar con MPLINK MPLAB-C17: Compilador de C para la familia PIC17Cxx MPLAB-C18: Compilador de C para la familia PIC18Cxx CCS PIC C: HI-TECH PIC C: IAR PIC C: PBASIC: Compilador de C Compilador de C Compilador de C Intrprete de Basic de Parallax
De Otras compaas:
MPLAB-ICE 2000 MPLAB-ICE 4000 PICMASTER (en desuso) ICEPIC (RF Solutions) .....
Fuente de Alimentacin Cabeza del Emulador
MPLAB IDE
Emulador de PIC
Tarjeta de Aplicacin
25
Hardware de Trabajo
Tarjetas de Evaluacin y Demostracin PICDEM 1 PICDEM 2 PICDEM 3 PICDEM 4 PICDEM 14A PICDEM 17 PICDEM 18R ..... Para entrenamiento sin necesidad de desarrollar hardware
28
29
Las ventajas del ensamblador sobre el C residen en la eficiencia y lo compacto que resulta el cdigo (entorno a un 80% menor en tamao). En el ensamblador de los microcontroladores PIC, una instruccin ocupa una nica posicin de la memoria de programa. Una simple instruccin en C que nos ocupa una nica lnea de nuestro cdigo fuente puede traducirse en varias posiciones de memoria de programa (como ejemplo introduzca unas cuantas condiciones en un if...).
Adems, cuando uno utiliza la programacin en ensamblador, se dispone de un control total sobre el tiempo de ejecucin de las instrucciones, lo que puede resultar especialmente importante en ciertas aplicaciones en tiempo real.
31
32
33
PINOUTS
34
35
36
37
Tensiones de alimentacin
Tensin de entrada para considerar un 1 lgico Corriente de pull-up cuando se activa el PORTB Corriente de fugas
39
Tensin de salida para un 0 lgico Tensin de salida para un 1 lgico Tensin maxima para salida drenador abierto Capacidades asociadas a los pines Caractersticas de la EEPROM Caractersticas de la FLASH EEPROM
40
41
Tiempos mnimos en estado alto bajo de una seal de reloj externa Mxima pendiente de los flancos de la seal de reloj
Cronogramas
42
Gracias