Download 2 - Overview Microcontroladores Microchip
Document related concepts
no text concepts found
Transcript
El microcontrolador PIC de Microchip Taller de Microcontroladores año 2012 Optativa de grado y Curso de Posgrado Organización de los PIC Características generales de los PIC Fabricados con tecnología CMOS. Aunque los dispositivos CMOS son más lentos que los TTL, son ideales para los µC porque requieren de menor consumo de energía. Es posible implementar sistemas que solo se alimenten de baterías corrientes. La tecnología CMOS también ocupa mucho menor espacio en el chip. Memorias de programa (FLASH, OTP o ROM), memoria de datos estática (SRAM) y memoria EEPROM internas. Puertos de E/S bidireccionales configurables independientemente pin por pin. Suministro de alta corriente en los puertos de E/S. Timer’s. Temporizadores de alta precisión o contadores de pulsos externos. WatchDog. Monitoriza que el PIC funcione adecuadamente a lo que se esperaba y no se cuelgue. ICSP (In Circuit Serial Programming). Permite realizar la programación del PIC utilizando una interfase serial con muy pocos pines. Bits de Configuración. A veces llamados fuses, permiten establecer un determinado modo de funcionamiento del PIC, como el tipo de oscilador que utilizará o si el código grabado podrá o no ser leído después de la programación. Otros recursos, más avanzados, son específicos a cada familia de PICs y pueden ser: 2 Organización de los PIC Características específicas de los PIC Módulos PWM. Generadores de ondas PWM (Pulse Width Modulation). Son particularmente útiles para controlar la velocidad de los motores DC. Convesores Análogico-Digital, ADC. Para recibir señales del mundo analógico. Puerto Serial Síncrono, MSSP. Para la comunicación con dispositivos que utilizan los buses I2C o SPI. Puerto Paralelo Esclavo, SPP. Por ejemplo, para conectarse directamente con el puerto paralelo del PC. USART, Transmisor Receptor Síncrono Asíncrono Universal. Para comunicarse mediante los protocolos RS232 con cualquier dispositivo que también lo soporte. Por ejemplo, podemos conectar nuestro PIC al puerto serie del PC o a cualquier otro µC con USART. Módulo Comparador Analógico. puede ahorrar un OP-AMP y algo más. Módulo CAN. Para facilitarle al PIC su conexión en una red LAN. Módulo USB. Casi todos los dispositivos digitales modernos presentan interfase USB. 3 Clasificación de los PIC Pic32 32 Pic dsPic33 33 dsPic its b dsPic30 30 32 dsPic Pic24H 24H Pic Pic24F 24F its Pic b 16 Pic18 18 Pic Pic16 16 Pic Pic12 12 Pic Pic10 10 Pic its b 8 Mayor rendimiento y funcionalidad 4 Arquitecturas de PIC´s de 8 bits Baseline Architecture Midrange Architecture Enhanced Midrange Architecture PIC18 Architecture Pin count 6 – 40 8 – 64 8 – 64 18 – 100 Interrupts No Single Interrupt Capability Single Interrupt Capability with Hardware Context Save Multiple Interrupt Capability with Hardware Context Save Operating Performance 5 MIPS 5 MIPS 8 MIPS 10 – 16 MIPS Instructions 33, 12-bit instructions 35, 14-bit instructions 49, 14-bit instructions 75 - 83, 16-bit instructions Up to 3 KB Up to 14 KB Up to 56 KB Up to 128 KB Up to 138 Bytes Up to 368 Bytes Up to 4 KB Up to 4 KB Program Memory Data Memory Features ● Smallest form factor ● Lowest cost ● Ideal for battery operated or space constrained applications ● Easy to learn & use ● Optimal cost-to-performance ratio ● Integrated peripherals including SPI, I2C™, UART, LCD, ADC ● C-code Optimized ● Enhanced 16 Level Hardware Stack ● Enhanced Indirect Addressing ● Reduced Interrupt Latency ● Simplified Memory Map ● 32 level deep stack, 8x8 hardware multiplier ● C-code optimized ● Advanced peripherals including CAN, USB, Ethernet, touch sensing, and LCD drivers Families Includes PIC10, PIC12 and PIC16 Includes PIC12 and PIC16 Includes PIC12F1xxx & PIC16F1xxx PIC18 J-series for costsensitive applications with high levels of integration 5 PIC18 K-series for low power, high-performance applications Arquitecturas de PIC´s de 8 bits • Bus de datos de 8 bits • Bus de direcciones de 12, 14 o 16 bits según el rango de arquitectura 6 Arquitecturas de PIC´s de 16 bits Características generales de los PIC de 16 bits • • • • • • • • • • Reloj de tiempo real y calendario Chequeo de redundancia cíclica USB Convertidores A/D de 10 y 10/12 bit Comparadores Conversores D/A de 10 bit y 16 bit Acceso Directo a Memoria (DMA) Parallel Master Port Code Guard Security Peripheral Pin Select Peripheral Pin Select (PPS) es una nueva característica de los microcontroladores de Microchip, que permite multiplexar muchos de los periféricos digitales a distintos pines del chip. El multiplexado permite efectivamente elegir que periférico se asigna a cual pin del chip, facilitando el desarrollo de las placas de circuito y evitando el cruce de pistas, además disminuir los efectos de las capacitancias parásitas. 7 Arquitecturas de PIC´s de 32 bits Características generales de los PIC de 32 bits • CPU de 80 MHz, 1.56 DMIPS/MHz • Hw de multiplicación y división de un solo ciclo de reloj • Cache de pre-fetching de 256 bytes flash • Cambio rápido de contexto y respuesta de interrupciones • Controlador DMA de ocho canales • Periféricos especiales con canales DMA dedicados • Capacidad de manipulación individual de bits • 10/100 Ethernet, CAN2.0b, USB host/device/OTG • Controlador de interrupciones anidadas • 10-bit ADC, 1Msps, and +/-1 LSB • Puerto maestro de 16 bits para soporte de QVGA y memoria • POR, BOR, LVD, Pull-ups • tensión desde 2.3 a 3.6 v, tolerancia de I/O: 5v 8 En resumen… 1. 2. 3. 4. 5. 6. 7. 8. 9. Arquitectura según modelo Hardvard Microcontrolador de arquitectura cerrada. Ejecución segmentada de instrucciones (fetching y ejecución) Formato de instrucciones de igual longitud: 12 bits en gama baja, 14 en media y mas en alta. Núcleo RISC con 33 instrucciones en gama baja, 35 en media y 60 en alta. Arquitectura basada en bancos de registros (todos los objetos del sistema, E/S, temporizadores, memoria, etc, implementados físicamente como registros). Diversidad de modelos con prestaciones diferentes Herramientas de soporte potentes y económicas (programadores, simuladores, emuladores, compiladores, interpretes, etc.). Arquitectura ortogonal: cualquier instrucción puede utilizar cualquier elemento de la arquitectura como fuente o destino. 9 Arquitectura ortogonal del PIC 10 Arquitectura de la serie 16Fxx El más representativo, difundido y utilizado es el 16F84A Características: Opera a una frecuencia máxima de 10 MHz 1Kbyte de memoria EEPROM de programa 68 palabras (de 8 bits) de memoria RAM 64 bytes de memoria EEPROM para datos (no volátiles) 35 instrucciones RISC 13 pines de entrada/salida (un puerto de 8 bits + otro de 5 bits) Timer/contador de 8 bits 11 Pinout del PIC16F84A • OSC1/CLKIN: Entrada de reloj o conexión con el cristal de cuarzo • OSC2/CLKOUT: Salida de Fosc/4 en modo oscilador R-C o conexión con el cristal de cuarzo • VPP/MCCLR·: En modo grabación tensión VPP (12-14 v) En funcionamiento normal, petición de Reset • RA0-RA3: Líneas de entrada/salida del puerto A • RA4/TOCK1: Línea de entrada/salida del puerto A o entrada de reloj para TMR0 • RB0/INT: Línea de entrada/salida del puerto B o Petición de interrupción externa • RB1-RB7: Líneas de entrada/salida del puerto B 12 Arquitectura del PIC16F84A 13 Características generales • Memoria de programa EEPROM de 1Kx14bits • Memoria de datos dividida en 2 áreas •Área RAM de 22 registros de propósito específico (SFR) y 32 de propósito general (16C84) ó 68 en el caso del 16F84 •Área EEPROM formada por 64 bytes • ALU de 8 bits y registro de trabajo W en configuración ortogonal. • El segundo operando de la ALU puede ser cualquier registro, memoria, puerto o el propio código de instrucción. • Recursos conectables al bus de datos: Puerto A, Puerto B, Temporizador, TMR0, etc. 14 Memoria ROM de instrucciones Reset Vector RETURNs …. Peripheral interrupt vector Stack level 1 000h 004h User Memory Space CALLs PC <12:0> • • • Stack level 8 Reset vector: Tras un reset la primera instrucción a ejecutar es la de dirección 0000h. Interrupt vector: una única entrada de interrupción. A continuación se debe verificar cual de las líneas la generó. 03FFh 1FFFh 15 Memoria RAM de datos • Consta de 2 bancos de 128 bytes cada uno • El PIC16F84A sólo tiene implementadas las primeras 80 direcciones de cada banco • En las 12 primeras posiciones se ubican los registros de propósito específico (SFR) • En las 68 posiciones siguientes están los registros de propósito general (GPR) • Los 80 registros de propósito general del banco 1 se mapean sobre el banco 0, dejando reducidos a 68 los registros operativos 16