INTRODUCCIÓN

Los microcontroladores  (o MCU por su siglas en inglés) son sistemas embebidos (o sistemas incrustados, o circuitos integrados), que tienen la caracteristica de ser programados con el fin de desarrollar ciertas labores y/o aplicaciones a nivel electrónico, que luego se pueden reflejar en ciertas acciones en el mundo exterior. Estos dispositivos por medio de su arquitectura interna puede desempeñar millones de instrucciones por segunto (o MIPS, por sus siglas en inglés), gracias a su unidad de procesamiento, también poseen internamente las mismas cuatro unidades fundamentales para una computadora, las cuales son : la Unidad Central de Procesamiento (o CPU), memoria (R.A.M y R.O.M), y puertos perifericos que actuan como entradas y/o salidas (I/O). Estos dispositivos por medio de sus periféricos y a pesar de que su trabajo es mas que todo interno, pueden recibir datos y/o señales del mundo externo, analizar su condicion y mandar una orden por medio de una señal o dato para accionar algún tipo de actuador o señal, de allí el por qué de su versatilidad.


Microcontrolador PIC18F4550 desarrollado por Microchip

La CPU se encarga de procesar las instrucciones de un software por medio de operaciones lógicas y aritmética básica, estos a su vez son interpretados por medio de unos y ceros (1 ó 0, este tipo de números se les llama binarios). La memoria R.O.M es la encargada de almacenar tanto software como datos y es para lectura exclusivamente, en esta memoria se almacena el software nativo del fabricante. las memorias variantes a la R.O.M son las memorias EPROM, EEPROM y FLASH y estas sirven para almacenar los datos y programas desarrollados por el usuario, estos tipos de memorias también van incrustadas en los MCU. La memoria R.A.M almacena (por asi decirlo) datos volátiles, es decir, solo los programas que estén en ejecución van a estar almacenados en este tipo de memoria y se limpia totalmente cuando se apaga o reinicia el sistema. Los puertos I/O, son los encargados de conectar el dispositivo con elementos externos ya sea un sensor o una señal de otro dispositivo.

En el mercado existen muchas marcas de microcontroladores, lenguajes de programación con los cuales se pueden programar y de que vienen tambien con diferentes arquitecturas. algunos ejemplos de marcas estan: MOTOROLA, TEXAS INSTRUMENTS, INTEL, HITACHI, MICROCHIP, entre otras. Mientras que los lenguajes para programarlos varian entre el ASSEMBLER, C, C++, PYTHON y otros. Sus arquitecturas varian entre 8-bits, 16-bits y 32-bits. En este blog se trabajará inicialmente con los microncontroladores PIC de la referencia PIC18F4550 de la marca MICROCHIP, el cual es de una arquitectura de 8-bit avanzada y se programará en el lenguaje C con el compilador XC8 en la plataforma MPLAB X IDE, progresivamente se trabajará con otras plataformas, softwares y lenguajes. Por el momento estos programas con los cuales se trabajara, se pueden descargar de la página de MICROCHIP y pueden correr en Windows, Linux y MAC OS, se simulará en el software programado en PROTEUS.


Descarga MPLAB X IDE
Descarga XC8



EL PIC18F4550:
  
El microcontrolador PIC18F4550, es un microcontrolador con 40 pines de arquitectura avanzada de 8-bits y pertenece a la familia PIC 18 (Otras familias son PIC10, PIC12, PIC16, entre otras), que fabrica la marca MICROCHIP, este encapsulado se caracteriza por ser (como ya se habia mencionado antes), de una arquitectura avanzada para los microntroladores de 8-bits. Lo que hace de esta familia avanzada, son las prestaciones que esta posee. Tales como:


  • Tecnología nanoWatt: Todos los dispositivos de la familia PIC18F2455/2550/4455/4550, reúnen un rango de caracteristicas que reducen significativamente el consumo de energia durante el funcionamiento tales como: Modos de ejecución alternativos, multiples modos de inoperatibilidad, modo de cambio sobre la marcha (on-the-fly mode switching), bajo consumo en módulos claves (tales como el Timer1 y el Watchdog Timer).
  • Bus Serial Universal (USB por su siglas en inglés): Los dispositivos de la familia 
    PIC18F2455/2550/4455/4550, incorpora un módulo USB 2.0, este módulo soporta ambas velocidades (alta y baja), de comunicación para todos los tipos de transferencia de datos. tambien incorpora su propio transceptor y regulador de 3.3 V, también  soporta el uso de transceptores externos y reguladores de voltaje.
  •  Multiples opciones y caracteristicas de oscilación: Todos los dispositivos de la familia PIC18 ofrece 12 opciones diferentes de oscilación, permitiendo que el usuario tenga un amplio rango de opciones para el desarrollo de aplicaciones de hardware, esto incluye: Cuatro modos de Cristales (ya sea con resonadores de cristal o cerámicos), Cuatro modos de reloj externo, Un bloque interno de oscilación con un reloj de 8MHz y una fuente INTRC así como un rango de 6 frecuencias de reloj seleccionables, un multiplicador de frecuencia (PLL), operaciones duales de reloj asincrono, un monitor de reloj a prueba de fallos y un inicializador de dos velocidades.
  • Duración de la memoria: Las celdas de memoria FLASH y de datos EEPROM están hechas para durar muchos miles de ciclos de escritura/borrado (100.000 de memoria de programa y 1000.000 para EEPROM), la retención de datos sin refrescar se estima a que sea de 40 años.
  • Auto programación: Estos aparatos pueden escribir en sus propios espacios de memoria bajo software de control interno.
  • Conjunto de instrucciones extendidas.
  • Módulo CCP (Captura/Comparación de PWM) mejorado: En el modo PWM este módulo provee de 1 á 4 salidas para controlar motores de medio o puente completo. Otra caracteristica incluye un auto apagado para desabilitar salidas PWM en interrupcion u otras condiciones seleccionadas como tambien un auto-reiniciar para reactivar las salidas una vez su condición sea despejada.
  • USART direccionable mejorado: Este módulo de comunicación serial es capaz de realizar operaciones estandar  RS-232 y provee soporte para el protocolo de bus LIN.
  • Conversor A/D de 10-bit: Este módulo toma las señales análogas captadas por un sensor y las traduce en una señal digital.
  • Puerto dedicado ICD/ICSP o puerto de debugging (In Circuit Debugger).

Diagrama de puertos I/O del PIC18F4550


 Las caracteristicas generales del microcontrolador PIC18F4550 son las siguientes:


Características
PIC18F4455
PIC18F4550
Frecuencia de Operación
DC – 48 MHz
DC – 48 MHz
Memoria de Programación (Bytes)
24576
32768
Memoria de Programación (Instrucciones)
12288
16384
Memoria de Datos (Bytes)
2048
2048
Memoria de Datos EEPROM (Bytes)
256
256
Fuentes de Interrupción
20
20
Puertos I/O
Puertos A, B, C, D, E
Puertos A, B, C, D, E
Temporizadores
4
4
Captura/Comparación/PWM Módulos
1
1
Captura Mejorada/
Comparación/PWM Módulos
1
1
Comunicaciones Seriales
MSSP,
USART Mejorado
MSSP,
USART Mejorado
Módulo de Bus Serial Universal (USB)

1
1
Transmision de Puertos Paralelos (SPP)
Si
Si
Módulo Análogo-Digital 10-Bit
13 Canales de Entrada
13 Canales de Entrada
Comparadores
2
2
Resets ( Delays)
POR, BOR,
RESET Instruction,
Stack Full,
Stack Underflow
(PWRT, OST),
MCLR (opcional),
WDT
POR, BOR,
RESET Instruction,
Stack Full,
Stack Underflow
(PWRT, OST),
MCLR (opcional),
WDT
Detector Programable de Low-Voltage
Si
Si
Brown-out Reset Programable
Si
Si
Conjunto de Instrucciones
75 Instrucciones;
83 Con conjunto de Instrucciones habilitado
75 Instrucciones;
83 Con conjunto de Instrucciones habilitado
Encapsulados
40-Pin PDIP
44-Pin QFN
44-Pin TQFP
40-Pin PDIP
44-Pin QFN
44-Pin TQFP
 








No hay comentarios:

Publicar un comentario