martes, 22 de febrero de 2011

TIPOS DE PIC

    Para resolver aplicaciones sencillas se precisan pocos recursos; en cambio, las aplicaciones grandes requieren numerosos y potentes. Siguiendo esta filosofía, Microchip construye diversos modelos de microcontroladores orientados a cubrir, las necesidades de cada proyecto. Así, hay disponibles microcontroladores sencillos y baratos para atender las aplicaciones simples y otros complejos y más costosos para las de mucha envergadura.
    La mayoría de los sistemas de control incrustados requieren CPU, memoria de datos, memoria de instrucciones, líneas de E/S, y diversas funciones auxiliares como temporizadores, comunicación serie y otras. La capacidad y el tipo de las memorias, el número de líneas de E/S y el de temporizadores, así como circuitos auxiliares, son parámetros que dependen exclusivamente de la aplicación y varían mucho de una situación a otra. Quizás se pueda considerar la decisión más importante del proyecto la elección del modelo de microcontrolador. Para adaptarse de forma óptima a las necesidades de los usuarios, Microchip ofrece diversos tipos de microcontroladores de 8 bits.
    La mejor manera de mantenerse informado sobre los PIC es mediante la página del fabricante,en ella se mantiene la información actualizada de todos los dispositivos en producción, se pueden buscar según varios criterios y se ofrecen en formtato PDF (en inglés y chino) las hojas de características de los dispositivos. Aproximadamente, cada seis meses aparece un dispositivo nuevo.
     Pueden tomarse diversas maneras de clasificar los PIC y ninguna puede considerarse definitiva, debido a la rápida evolución de estos dispositivos. A continuación se presentan distintas formas de clasificar a los PIC, según diversos aspectos:
  • Familia de productos
    • PIC10
    • PIC12
    • PIC14
    • PIC16
    • PIC17
    • PIC18
  • Tipo de memoria
    • FLASH
    • OTP
    • ROM
  • Número de patillas E/S
    • 4 - 17 patillas
    • 18 - 27 patillas
    • 28 - 44 patillas
    • 45 - 80 patillas
  • Tamaño de memoria (bytes)
    • 0.5K - 1K
    • 2K - 4K
    • 8K - 16K
    • 24K -32K
    • 48K - 64K
En la clasificación por familias, las principales diferencias radican en el número de instrucciones y su longitud, el número de puertos y funciones, lo cual se refleja en el encapsulado, la complejidad interna y de programación, y en el número de aplicaciones.

PICs modernos

Los viejos PICs con memoria PROM o EPROM se están renovando gradualmente por chips con memoria Flash. Así mismo, el juego de instrucciones original de 12 bits del PIC1650 y sus descendientes directos ha sido suplantado por juegos de instrucciones de 14 y 16 bits. Microchip todavía vende versiones PROM y EPROM de la mayoría de los PICs para soporte de aplicaciones antiguas o grandes pedidos.
Se pueden considerar tres grandes gamas de MCUs PIC en la actualidad: Los básicos (Linebase), los de medio rango (Mid Range) y los de alto desempeño (high performance). Los PIC18 son considerandos de alto desempeño y tienen entre sus miembros a PICs con módulos de comunicación y protocolos avanzados (USB, Ethernet, Zigbee por ejemplo).

Clones del PIC

Por todos lados surgen compañías que ofrecen versiones del PIC más baratas o mejoradas. La mayoría suelen desaparecer rápidamente. Una de ellas que va perdurando es Ubicom (antiguamente Scenix) que vende clones del PIC que funcionan mucho más rápido que el original. OpenCores tiene un núcleo del PIC16F84 escrito en Verilog.

PICs wireless

El microcontrolador rfPIC integra todas las prestaciones del PICmicro de Microchip con la capacidad de comunicación wireless UHF para aplicaciones RF de baja potencia. Estos dispositivos ofrecen un diseño muy comprimido para ajustarse a los cada vez más demandados requerimientos de miniaturización en aparatos electrónicos. Aun así, no parecen tener mucha salida en el mercado.

PICs para procesado de señal (dsPICs)

Los dsPICs son el penúltimo lanzamiento de Microchip, comenzando a producirlos a gran escala a finales de 2004. Son los primeros PICs con bus de datos inherente de 16 bits. Incorporan todas las posibilidades de los anteriores PICs y añaden varias operaciones de DSP implementadas en hardware, como multiplicación con suma de acumulador (multiply-accumulate, o MAC), barrel shifting, bit reversion o multiplicación 16x16 bits.

PICs de 32 bits (PIC32)

Microchip Technology lanzó en noviembre de 2007 los nuevos microcontroladores de 32 bits con una velocidad de procesamiento de 1.5 DMIPS/MHz con capacidad HOST USB. Estos MCUs permiten un procesamiento de información increíble con un núcleo de procesador de tipo M4K.
Se puede encontrar mucha información y documentación sobre PICs en Internet principalmente por dos motivos: el primero, porque han sido muy usados para romper los sistemas de seguridad de varios productos de consumo mayoritario (televisión de pago, Play Station...), lo que atrae la atención de los crackers; y segundo, porque el PIC16C84 fue uno de los primeros microcontroladores fácilmente reprogramables para aficionados. Hay muchos foros y listas de correo dedicados al PIC en los que un usuario puede proponer sus dudas y recibir respuestas.


jueves, 17 de febrero de 2011

HISTORIA DE LOS PIC


HISTORIA DE LOS PIC´S
Los PIC son una familia de microcontroladores tipo RISC fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división de microelectrónica de General Instrument.
El nombre actual no es un acrónimo. En realidad, el nombre completo es PICmicro, aunque generalmente se utiliza como Peripheral Interface Controller (controlador de interfaz periférico).
El PIC original se diseñó para ser usado con la nueva CPU de 16 bits CP16000. Siendo en general una buena CPU, ésta tenía 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 microcódigo simple almacenado en ROM para realizar estas tareas; y aunque el término no se usaba por aquel entonces, se trata de un diseño RISC que ejecuta una instrucción cada 4 ciclos del oscilador.
En 1985 la división de microelectrónica de General Instrument se separa como compañía independiente que es incorporada como filial (el 14 de diciembre de 1987 cambia el nombre a Microchip Technology y en 1989 es adquirida por un grupo de inversores) y el nuevo propietario canceló casi todos los desarrollos, que para esas fechas la mayoría estaban obsoletos. El PIC, sin embargo, se mejoró con EPROM para conseguir un controlador de canal programable. Hoy en día multitud de PICs vienen con varios periféricos incluidos (módulos de comunicación serie, UARTs, núcleos de control de motores, etc.) y con memoria de programa desde 512 a 32.000 palabras (una palabra corresponde a una instrucción en lenguaje ensamblador, y puede ser 12, 14 o 16 bits, dependiendo de la familia específica de PICmicro).

La presencia de todos estos dispositivos en un espacio extremadamente reducido, le da al proyectista enormes ventajas derivadas del uso de un sistema a microprocesador, debido a que estos hace poco tiempo se construían con circuitos tradicionales.

Los PIC son disponibles en una amplia gama de modelos para adaptarse mejor a las exigencias de los proyectos, diferenciándose por él número de líneas I/O y por la dotación de dispositivos. Se parte de los modelos más pequeños identificados con la sigla PIC12Cxx dotados de solo 8 pines, hasta llegar a modelos más grandes con una sigla PIC17Cxx dotados de 40 pines.
Una descripción detallada de la tipología del PIC está disponible en el site web de Microchip  (http://www.microchip.com ) obtenible vía internet, que aconsejamos mucho de explorar por la gran cantidad de información técnica, software de soporte, ejemplos de aplicaciones y actualizaciones disponibles.

Inicialmente cuando no existían los microprocesadores las personas se ingeniaban en diseñar sus circuitos electrónicos y los resultados estaban expresados en diseños que implicaban muchos componentes electrónicos y cálculos matemáticos. Un circuito lógico básico requería de muchos elementos electrónicos basados en transistores, resistencias, etc, lo cual desembocaba en circuitos con muchos ajustes y fallos; pero en el año 1971 apareció el primer microprocesador el cual originó un cambio decisivo en las técnicas de diseño de la mayoría de los equipos. Al principio se creía que el manejo de un microprocesador era para aquellas personas con un coeficiente intelectual muy alto; por lo contrario con la aparición de este circuito integrado todo sería mucho más fácil de entender y los diseños electrónicos serian mucho más pequeños y simplificados.

Entre los microprocesadores más conocidos tenemos el popular Z-80 y el 8085. Los diseñadores de equipos electrónicos ahora tenían equipos que podían realizar mayor cantidad de tareas en menos tiempo y su tamaño se redujo considerablemente; sin embargo, después de cierto tiempo aparece una nueva tecnología llamada microcontrolador que simplifica aun más el diseño electrónico.



Cuando no existían los microprocesadores, los ingenieros y aficionados a la electrónica creaban sus circuitos electrónicos mediante diseños que implicaban muchos componentes individuales y complejos cálculos matemáticos. Un circuito lógico básico a menudo requería de muchos elementos electrónicos basados en transistores, resistencias, circuitos integrados con compuertas lógicas (ver nota sobre compuertas digitales en NeoTeo), etc., lo cual implicaba circuitos con muchos ajustes y posibilidades de fallos. En el año 1971 apareció el primer microprocesador (desarrollado por Intel, el 4004) el cual originó un cambio decisivo en las técnicas de diseño de la mayoría de los equipos. A partir de ese momento, fue posible construir un equipo electrónico con un microprocesador, unos pocos circuitos accesorios y un software. Los diseños electrónicos comenzaron a ser mucho más pequeños y simplificados, los diseñadores de equipos electrónicos podían realizar mayor cantidad de tareas en menos tiempo y el tamaño de los equipos se redujo considerablemente; sin embargo, después de cierto tiempo apareció una nueva tecnología, llamada microcontrolador que simplifico aun mas el diseño electrónico, al incluir en un mismo encapsulado el núcleo microprocesador, la memoria y las entradas/salidas.

Esto tiene mucha lógica, si pensamos que un microcontrolador cuesta mucho menos que un circuito equivalente construido a partir de circuitos integrados “comunes” y que además muy sencillo agregar o modificar las prestaciones de un dispositivo construido con un microcontrolador simplemente modificando su programa, sin tener que reconfigurar la electrónica (el “hard” del aparato).
Si uno se toma el trabajo de utilizar un buscador de paginas web, es posible encontrar aplicaciones de lo mas diversas que involucren microcontroladores, como por ejemplo alarmas de todo tipo, interfaces electrónicas, manejadores de pantallas LCD alfanuméricas y graficas, temporizadores, “computadoras” de a bordo de los mas variados vehículos, interfaces con PC, control de maquinas industriales, y un largísimo etcétera.


Algunos fabricantes de microcontroladores superan el millón de unidades de un modelo determinado producidas en una semana. Este dato puede dar una idea de la masiva utilización de estos componentes.



Los microcontroladores están invadiendo el mundo. Están presentes en nuestra casa, en nuestro trabajo y en nuestra vida. Se pueden encontrar controlando los hornos microondas y los televisores de nuestro hogar, en los teclados y ratones de los computadores y en los automóviles. En el bolsillo llevamos unos cuantos entre los del teléfono móvil, los que tienen las modernas llaves del coche y los mandos a distancia del garaje y la alarma doméstica. Pero la invasión acaba de comenzar y el comienzo del siglo XXI será testigo de la conquista masiva de estos diminutos computadores, que gobernarán la mayor parte de los aparatos que fabricamos y usamos los humanos.


Pic moderno

VIDEOS PROYECTOS CON PICS







ARQUITECTURA, CONSTRUCCION Y COMPOSICION DEL PIC 16F84

 

ARQUITECTURA

Las altas prestaciones de los microcontroladores PIC derivan de las características de su arquitectura. Están basados en una arquitectura tipo Harvard que posee buses y espacios de memoria por separado para el programa y los datos, lo que hace que sean más rápidos que los microcontroladores basados en la arquitectura tradicional de Von Neuman.

Otra característica es su juego de instrucciones reducido (35 instrucciones) RISC, donde la mayoría se ejecutan en un solo ciclo de reloj excepto las instrucciones de salto que necesitan dos.

Posee una ALU (Unidad Aritmético Lógica) de 8 bits capaz de realizar operaciones de desplazamientos, lógicas, sumas y restas. Posee un Registro de Trabajo (W) no direccionable que usa en operaciones con la ALU.

Dependiendo de la instrucción ejecutada, la ALU puede afectar a los bits de Acarreo, Acarreo Digital (DC) y Cero (Z) del Registro de Estado (STATUS).

 La pila es de 8 niveles. No existe ninguna bandera que indique que esté llena, por lo que será el programador el que deberá controlar que no se produzca su desbordamiento.
    
Este microcontrolador posee características especiales para reducir componentes externos con lo que se reducen los costos y se disminuyen los consumos. Posee 4 diferentes modos de oscilador, desde el simple circuito oscilador RC con lo que se disminuyen los costos hasta la utilización de un oscilador a cristal.
   
 En el modo SLEEP el consumo se reduce significativamente y puede ‘despertarse’ al microcontrolador utilizando tanto interrupciones internas como externas y señal de reset. Además posee la función Watchdog Timer (Perro Guardián) que protege al micro de ‘cuelgues’ debido a fallos software que produzcan bucles infinitos.

El PIC 16F84 al igual que los demás miembros de su familia, se caracterizan por qué:

Su procesador es segmentado, "pipe-line".

Su procesador es tipo RISC
                   
Tiene una arquitectura HARVARD
El formato de las instrucciones es ortogonal

Todas las instrucciones tienen la misma longitud (14 bits)

La arquitectura está basada en banco de registros



Tradicionalmente los microprocesadores se basan en la estructura de Von Neumann, como la de la figura siguiente, que se caracteriza por disponer de una única memoria principal en la que se almacenan los datos y las instrucciones. A esta memoria se accede a través de un sistema de buses único:
  • Bus de datos
  • Bus de direcciones
  • Bus de control
CONSTRUCCION Y COMPOSICION



Descripción de patillas
Nombre
Tipo
Descripción
OSC1/CLKIN
16
I
Entrada del oscilador a cristal/Entrada de la fuente de reloj externa
OSC2/CLKOUT
15
O
Salida del oscilador a cristal. En el modo RC, es una salida con una frecuencia de ¼ OSC1
MCLR
4
I/P
Reset/Entrada del voltaje de programación.
RA0
17
I/O
Puerto A bidireccional, bit 0
RA1
18
I/O
Puerto A bidireccional, bit 1
RA2
1
I/O
Puerto A bidireccional, bit 2
RA3
2
I/O
Puerto A bidireccional, bit 3
RA4/T0CKI
3
I/O
También se utiliza para la entra de reloj para el TMR0
RB0/INT
6
I/O
Puerto B bidireccional, bit 0
Puede seleccionarse para entrada de interrupción externa
RB1
7
I/O
Puerto B bidireccional, bit 1
RB2
8
I/O
Puerto B bidireccional, bit 2
RB3
9
I/O
Puerto B bidireccional, bit 3
RB4
10
I/O
Puerto B bidireccional, bit 4
Interrupción por cambio de estado
RB5
11
I/O
Puerto B bidireccional, bit 5
Interrupción por cambio de estado
RB6
12
I/O
Puerto B bidireccional, bit 6
Interrupción por cambio de estado
RB7
13
I/O
Puerto B bidireccional, bit 7
Interrupción por cambio de estado
Vss
5
P
Tierra de referencia
Vdd
14
P
Alimentación