Ir al contenido principal

Computo Integrado (LAB) - Familia de microcontroladores (PIC)

Los microcontroladores PIC se pueden clasificar, atendiendo al tamaño de instrucciones, en 3 grandes grupos o gamas:

  • Gama baja: microcontroladores con istrucciones de 12 bits
  • Gama media: microcontroladores con instrucciones de 14 bits
  • Gama alta: microcontroladores de instrucciones de 16 bits

Los microcontroladores PIC tambien se agrupan en 5 grandes familias: PIC10, PIC16, PIC17 y PIC18.

Los PIC10 son básicamente microcontroladores de 6 terminales.

Ejemplo:
PIC10F200-I/PG

 

Se emplea una arquitectura RISC con sólo 33 instrucciones de una sola palabra / de un solo ciclo.






La familia de PIC12 agrupa a los microcontroladores disponibles en encapsulado de 8 terminales.

PIC12F508/509/16F505

Numero de entradas/salidas   -> 5
Velocidad                                -> 4MHz
Voltage -    ->       (Vcc/Vdd)2 V ~ 5.5 V




Algunas de estas 5 familias tienen numerosas subfamilias, como sucede con los PIC16. Ademas algunas de estas familias incluyen dispositivos de mas de una gama, como los PIC16 y PICS12. El criterio empleado para clasificar un PIC dentro de una familia es, pues, un tanto complejo.

La siguiente imagen es una ayuda para ubicar los PIC

Tabla resumen de la relacion familia - gama en lso microcontroladores PIC

Microcontroladores de Gama baja

Los microcontroladores PIC de gama baja disponen de un repertorio de 33 instrucciones de 12 bits cada una. La memoria de programa tiene una capacidad de hasta 2k (2048) palabras de 12 bits y esta organizada en paginas de 512 palabras cada una. La memoria de datos están formados por registros de 8 bits y se organiza en bancos de hasta 32 registros cada uno.

Los PIC de gama baja tienen un pila (stack) de dos niveles, para guardar direcciones de la memoria de programa.

Los microcontroladores PIC de gama baja son de 3 familias:
  • los PIC16X5xx
  • los PIC12X5xx
  • los PIC10
Los PIC16X5x constituyen la principal familia de PIC de gama baja.
La familia PIC12X5x se caracteriza por su encapsulaieto de 8 terminales. 
La familia PIC10Fxxx se distingue por su pequeño tamaño, pues se presenta en encapsulados de 8 o 6 terminles. 

Todos estos PIC tienen memoria de programa tipo FLASH, aunque no disponen de memoria EEPROM de datos.

Microcontroladores de Gama media

La siguiente figura muestra la arquitectura general de los PIC de gama media. Estos dispositivos tienen un repertorio de 35 instrucciones de 14 bits cada una. La memoria de programa puede llegar a las 8 8k (8192) palabras de 14 bits y se organiza en paginas de 2k (2048) palabras cada una. La memoria de datos esta formada por registros de 8 bits y esta organizada en bancos de 120 registros cada uno, con un máximo de 4 bancos.
Arquitectura interna de los PIC10Fxx, micocontroladores de gama baja con encapsulamiento de 6 terminales y memoria de programa FLASH.


Microcontroladores de gama alta

Los microncotroladores de gama alta se distiguen por sus instrucciones de 16 bits, mayor profundidad en la pila y un sistema de interrupciones mas elaborado que incluye, ademas de las inerrupciones internar de los dispositivos integrados en el microcontrolador, varias entradas para interruciones externas.

Finalmente el numero de dispositivos de entrada y salida es bastante mas amplio que el PIC de gama  media.

Los PIC de gama alta estan disponibles en 2 familias, que comprende:
  • Los PIC17
  • Los PIC18
Los PIC17 tienen un repertorio de 58 instrucciones de 16 bits cada una. la memeria de programa puede ser hasta 64k (65536) palabras de 16 bits cada una y la memoria de datos pueden llegar a tener hasta 1k (1024 ) registros de 8 bits.

Una caracteristica interesante de los PIC17 es su arquitectura abierta.

Estos microcontroladores disponen de una amplia gama de dispositivos de entrada y salida: puertos, paralelos serie, temporizadores, convertidor A/D, etc. 

Comentarios

Publicar un comentario

Entradas populares de este blog

Pequeño Juego con LEDS y Dip Switch

Siguiendo con los mini-proyectos, lo que quería hacer originalmente era un tipo "candado" con push-button y LEDs, el objetivo seria, meter la combinacion de botones correcta y los LEDS encendería por un motivo practico, en forma de serpiente. El objetivo no cambio, pero por falta de "material" lo hice con un dip switch de X entradas(depende de que tan grande quieras la combinación). CONOCIMIENTOS(max. 7 estrellas): Electronica:     ★ ★ Programación: ★ ★ Juego de Combinación + LEDs El programa es un poco mas complicado que el mini-proyecto pasado , pero aun asi es basico. Guardamos las salidas de los LEDs en un arreglo, despues con los valores recibidos y comparados de los dip switch jugamos con los LEDś. Hardware Requerido (1) Arduino Uno (6) LED (8) Resistencias 330 Ω (1) Dip Switch Circuito Usamos las salidas del ARduino 2-7 para los LEDS Usamos la salida A5, A4 para el dip switch Para hacer prender los LEDS tienes que encontrar la

Tarea #5 - Codigo Hamming - Python

Codigo hamming Liga al repo Teoria segun wikipedia Antes de los códigos Hamming se utilizaron ciertos códigos detectores de error, como lo fueron el código linteing, pero ninguno llegó a ser tan eficaz como los de Hamming. A continuación se describen algunos de estos códigos. Paridad   La   paridad   consiste en añadir un bit, denominado   bit de paridad , que indique si el número de los bits de valor 1 en los datos precedentes es par o impar. Si un solo bit cambiara por error en la transmisión, el mensaje cambiará de paridad y el error se puede detectar (nótese que el bit donde se produzca el error puede ser el mismo bit de paridad). La convención más común es que un valor de paridad   1   indica que hay un número impar de unos en los datos, y un valor de paridad de   0   indica que hay un número par de unos en los datos. info. completa y un vídeo que me ayudo mucho para esta tarea: (TIENEN QUE VERLO - OBLIGATORIO) http://www.youtube.com/watch?v=xiDPFm9PeLU Impleme

Potenciometro + pushboton + led

Bueno, estos días he estado practicando con los ejemplos de la pagina de Arduino , algunos que me llamaron la atención los voy a compartir, por supuesto con modificaciones. Nivel de conocimientos: Electronica:        ★   Programació n :    ★    Potenciometro + push-boton = LEDintensidad El mini-proyecto es controlar la intensidad de un LED mediante un potenciometro el cual combinado con push-botton para prenderlo o apagarlo. Hardware Requerido (1) Arduino UNO (1) Potenciometro (1) Push-boton (1) LED (1) Resistencia 330 Ω Circuito Conectamos el LED al PIN 9 del Arduino Conectamos el PUSH_BOTON al PIN ANOLOGICO 0 (A0) Conectamos el POTENCIOMETRO al PIN ANOLOGICO 1 (A1) El funcionamiento del circuito es basico, mientras tengas pulsado el Push-Boton el LED se mantendrá encendido y con el pontenciometro controlas la intensidad del LED. Código Video