Está en la página 1de 27

1

INTRODUCCIN A LOS
MICROCONTROLADORES PIC
DTO. INGENIERIA ELECTRNICA
T
E
M
A

2

2
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Los 'PIC' son una familia de microcontroladores tipo RISC fabricados por Microchip Technology
Inc. y derivados del PIC1650, originalmente desarrollado por General Instruments. En realidad, el
nombre completo es PICmicro, generalmente se utiliza como Peripheral Interface Controller
(Controlador de Interfaz Perifrico).

El PIC original se dise para ser usado con la nueva CPU de 16 bits CP1600. Siendo en general
una buena CPU, tena malas prestaciones de E/S, y el PIC de 8 bits se desarroll en 1975 para
mejorar el rendimiento del sistema quitando peso de E/S a la CPU. El PIC utilizaba microcdigo
simple almacenado en ROM para realizar estas tareas; y aunque el trmino no se usaba por aquel
entonces, se trata de un diseo RISC que ejecuta una instruccin cada 4 ciclos del oscilador.

En 1985, dicha divisin de microelectrnica de General Instruments se convirti en una filial y el
nuevo propietario cancel casi todos los desarrollos, que para esas fechas la mayora estaban
obsoletos. El PIC, sin embargo, se mejor con EPROM para conseguir un controlador de canal
programable. Hoy en da multitud de PICs vienen con varios perifricos incluidos (mdulos de
comunicacin serie, UARTS, ncleos de control de motores, etc.) y con memoria de programa desde
512 a 32.000 palabras (una palabra corresponde a una instruccin en ensamblador, y puede ser 12,
14 o 16 bits, dependiendo de la familia especfica de PICmicro).
WIKIPEDIA
3
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Ventajas
Eficiencia del cdigo: permiten una gran compactacin de los programas.
Rapidez de ejecucin: a frecuencia de 20MHz -> 5 millones de instr./seg.
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.

4
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC

Arquitectura Harvard: buses internos separados para memoria de datos(8 bits)
y de programa (12, 14 16 bits depende de la familia).




Data
Memory



C P U


8
16

Program
Memory

12
14
16
24
X12=PIC10F2XX, PIC12F5XX,PIC16F5XX
X14=PIC12FXXX,PIC16FXXX
X16=PIC18FXXX
X24=dsPIC30F
5
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Alta velocidad de aplicacin con bajo consumo.
Cada ciclo de instruccin dura de la frecuencia de reloj de entrada







RISC simple ciclo: 1000 ns @ 4 MHz (1 MIPS)
200 ns @ 20 MHz (5 MIPS)
120 ns @ 33 Mhz (8.3 MIPS)
100 ns @ 40 Mhz (10 MIPS)
*MIPS: Millones de instrucciones por segundo


6
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC

Microprocesador RISC, juego de instrucciones muy corto
(33/35/58/76).
Single word y Ortogonal.
Fciles de aprender.
Todas las instrucciones ocupan una posicin de memoria de programa.
Instrucciones potentes (ancho de palabra 12 / 14 / 16 bit).
Cdigo altamente eficiente.
La arquitectura Harvard permite instrucciones de single-word/single-cycle.

Ejemplo: MOVE immediate, Acc
PIC16C5X: MOVLW #imm<8>
1 word / 1 ciclo mquina

CISC XX: #imm<8>
2 bytes / 2 ciclos de bsqueda y ejecucin
1100 imm<8>
op code
imm<8>
MOVE
7
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC

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 subrutina que ocupan 2 ciclos).
P1 MOVF REGX,W R1 ADDWF PCL,F
P2 CALL R1 R2 RETLW 0xB7
P3 MOVWF PORTB R3 RETLW 0x5A
P4 . . . R4 . . .
Rn RETLW 0xFF
T1 Fetch P1
T2 Exec P1 Fetch P2
T3 Exec P2 Fetch P3
T4 Exec NOP...Fetch R1
T5 Exec R1 Fetch R2
T6 Exec NOP...Fetch Rn
T7 Exec Rn Fetch Rm
T8 Exec NOP...Fetch P3
T9 Exec P3 ...
8
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
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.
General Purpose
Registers (RAM)
Other SFRs
PORTA
FSR
STATUS
PCL
TMR0
INDF
W Register
ALU
Data
Memory
9
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Amplio rango de mdulos internos.
Puertos de Entrada/Salida.
Puerto Esclavo Paralelo (PSP).
Temporizadores/contadores de 8/16 bits (TMR).
Captura / Comparacin / PWM (CCP).
Comparadores Analgicos.
Conversin Analgica / Digital (A/D).
Transmisor Receptor Asncrono Sncrono Universal (USART SCI).
Puerto Serie Sncrono Bsico Maestro(BSSP MSSP).
Memoria EEPROM de datos.
FLASH EEPROM de programa modificable desde el cdigo.
Soporte para CAN, LIN, Irda
Soporte para controlador Ethernet.
Controladores LCD.

Display
Drivers
D / A
A / D
FLASH
USART
SPI
I
2
C
CAP
COMP
PWM
EEPROM
Power
Drivers
10
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Amplio rango de perifricos externos.
11
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familia PIC.
32 Bits
16 Bits
dsPIC30F
8 Bits
PIC18FXXX
PIC12F6XX,PIC16FXX
PIC12F4XX,PIC16F5XX
PIC10F2XX
4 Bits
Base-line
Mid-range
Enhanced
12
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Migracin en la Familia PIC.
13
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familia 8 pin





Familia 20 pin
14
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familia 18 pin





Familia 28 pin
15
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familia 40 pin













16
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Encapsulados/nomenclatura
17
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Encapsulados/nomenclatura
18
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familias en la web de MICROCHIP
19
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familias en la web de MICROCHIP (hojas de datos)
20
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familias en la web de MICROCHIP (bsqueda paramtrica)
21
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC
Familias en la web de MICROCHIP
En esta web tambin se pueden encontrar los DATA SHEET de los distintos
microcontroladores (y otros dispositivos de MICROCHIP) as como NOTAS DE
APLICACIN (divididas por dispositivo o por aplicacin).
22
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: dsPIC
23
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Facilidad de desarrollo
El desarrollo software parte del diseo del programa y escritura del
cdigo fuente en ensamblador (MPASM) o lenguaje de alto nivel (C
Compilers).
A continuacin se prueba, verifica y modifica mediante:
Simulacin del programa -puro software- (MPLAB SIM).
Emulacin dentro del circuito de aplicacin -software y hardware- (MPLAB-
ICE y MPLAB-ICD).
Grabacin del cdigo mquina en la memoria del micro (PICSTART-PLUS y
PROMATE-II).
24
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Facilidad de desarrollo
25
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Facilidad de desarrollo
26
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Facilidad de desarrollo
Existen decenas de productos de otros fabricantes.
Compiladores:
CCS PIC C: Compilador de C.
HI-TECH PIC C: Compilador de C.
Proton IDE: Compilador de BASIC.
MikroBASIC: Compilador de BASIC.
Simuladores:
Proteus ISIS (LabCenter)
Emuladores:
ICEPIC (RF Solutions)
Programadores:
Existen multitud de programadores (oficiales y no oficiales).
Tarjetas de evaluacin:
Existen, tambin, multitud de fabricantes que ofrecen tarjetas de evaluacin
(incluido, por supuesto MICROCHIP).

27
INTRODUCCIN A LOS MICROCONTROLADORES PIC
Microprocesador PIC: Programacin

Un elemento importante en el desarrollo con micros es la grabacin del cdigo. Lo
ideal es contar con un grabador de algn fabricante que permita la grabacin de la
mayora de los micros del mercado. Esta opcin es normalmente cara y puede ser
necesario el desarrollo de un programador propio.
La mayora de PICs que Microchip distribuye hoy en da incorporan ICSP (In
Circuit Serial Programming, programacin serie incorporada) o LVP (Low Voltage
Programming, programacin a bajo voltaje), lo que permite programar el PIC
directamente en el circuito destino.
Existe un rango de PICs que permiten cargar un programa residente o
BOOTLOADER en una parte de la memoria de programa y que permite la
reprogramacin del PIC utilizando su puerto serie.

También podría gustarte