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.
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:
Las caracteristicas generales del microcontrolador PIC18F4550 son las siguientes:
![]() |
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