Tipos de Microcontroladores y Programación

Publicado el 7 abril, 2024 por Rodrigo Ricardo

¿Qué es un microcontrolador?

Abra una caja negra con haces de cables y tubos que rodean una placa de circuito roja

Una unidad de microcontrolador (MCU) es un circuito integrado que contiene todos los componentes básicos necesarios para un dispositivo informático completo. Las MCU generalmente están diseñadas para controlar sistemas integrados y están personalizadas para una tarea específica. Un sistema integrado es un sistema informático simple integrado en un dispositivo o sistema electrónico más grande.

Componentes de un microcontrolador

Un microcontrolador tiene, como mínimo, una unidad central de procesamiento (CPU), memoria volátil y no volátil e interfaces de entrada/salida (E/S) para periféricos. Dependiendo de su diseño o función, también pueden incluir convertidores analógico-digital (ADC), convertidores digital-analógico (DAC), temporizadores y paquetes de comunicaciones.

Dibujo de un chip microcontrolador con pines y componentes etiquetados

Tipos de microcontroladores

Debido a que los microcontroladores están personalizados para tareas específicas, existen muchos tipos diferentes disponibles en el mercado. A continuación se muestran algunos de los diversos tipos disponibles.

Microcontroladores de 4 bits

Estos son los microcontroladores más simples disponibles. Todavía se producen muy pocos debido a las severas restricciones de simplicidad. Una arquitectura de 4 bits sólo permite implementar 16 comandos diferentes. Los microcontroladores de 4 bits se encuentran en los productos o aplicaciones más simples producidos en masa donde el uso de baja energía es el factor de diseño determinante.

Microcontroladores de 8 bits

Se trata de microcontroladores sencillos con un tamaño de memoria direccionable pequeño. Se utilizan para sistemas integrados muy simples, a menudo para casos de uso de bajo consumo. Son rentables para aplicaciones de gama baja en comparación con los sistemas de 16 o 32 bits.

Microcontroladores de 16 y 32 bits

Los microcontroladores con estos tamaños de memoria constituyen la mayor parte del mercado de MCU. El tamaño de bits de la MCU limita tanto el número total de instrucciones posibles como el límite superior del tamaño de la dirección de memoria para un dispositivo determinado. La complejidad de la programación requerida es generalmente el factor decisivo a la hora de elegir qué MCU de tamaño de bits utilizar para una aplicación.

Tres chips de computadora de diferentes tamaños al lado de una moneda de diez centavos para comparar tamaños

Microcontrolador PIC

Los microcontroladores PIC son una línea de circuitos producidos por la empresa Microchip Technology y tienen versiones en las categorías de 8, 16 y 32 bits. La empresa ofrece un excelente soporte de programación y diseño para ingenieros.

Microcontroladores ARM

Todos los microcontroladores de máquinas RISC avanzadas (ARM) utilizan una versión de la arquitectura de instrucciones de computadora con conjunto de instrucciones reducido (RISC) propiedad de ARM, Ltd. Sin embargo, ARM otorga licencias de la arquitectura a muchos fabricantes diferentes. Los microcontroladores ARM son adecuados para dispositivos de alta gama, como computadoras portátiles, etc.

Microcontroladores AVR

Amtel desarrolló microcontroladores AVR, pero la tecnología fue adquirida por Microchip Technology en 2016. Estos microcontroladores se fabrican en variedades de 8 y 32 bits y utilizan una arquitectura RISC.

Microcontroladores basados ​​en FPGA:

Los conjuntos de puertas programables en campo (FPGA) ofrecen un nivel de flexibilidad y capacidades de procesamiento personalizables. Como su nombre lo indica, estos son algunos de los pocos microcontroladores que se pueden actualizar después de la implementación con relativa facilidad. Las redes y el procesamiento de video son aplicaciones comunes para las MCU basadas en FPGA.

Programación de microcontroladores

Los microcontroladores a menudo se programan directamente utilizando un lenguaje ensamblador de máquina específico para el procesador de la MCU. Sin embargo, a medida que los microcontroladores se han vuelto más potentes, se ha vuelto más común escribir el código de control en un lenguaje de alto nivel como C o C++. Algunas MCU ahora pueden incluso ejecutar un intérprete, como una máquina virtual Java, y utilizar un lenguaje interpretado para programar.

Debido a que los microcontroladores generalmente están diseñados para un sistema integrado, carecen de la capacidad para la mayoría de los dispositivos de interfaz humana comunes con otros sistemas informáticos. Los programas para controlar microprocesadores a menudo se desarrollan en simuladores para el microcontrolador y utilizan un entorno de desarrollo integrado (IDE) que puede incluir dispositivos periféricos para conectarse a la MCU. Si no utilizan un entorno virtual, los desarrolladores necesitan un entorno de diseño y prueba que les permita conocer el contenido de los registros de memoria y poder escribir y reescribir instrucciones fácilmente. Debido a esto, las MCU utilizadas en el diseño y desarrollo son más caras que los modelos de producción.

Los microcontroladores almacenan las instrucciones del programa directamente en una memoria flash no volátil integrada en el circuito. Suele ser en forma de memoria EEPROM que se puede escribir con una herramienta especializada en el momento de la producción. Los microcontroladores más antiguos utilizaban memoria de una sola escritura, o memoria que debía exponerse a luz ultravioleta para su reprogramación. Muy pocas MCU son programables en campo. Un dispositivo programable en campo puede tener su software básico reescrito o actualizado después de su implementación, fuera del proceso de fabricación.

Aplicaciones de MCU

Los microcontroladores se utilizan en todo tipo de dispositivos electrónicos, incluidos despertadores, controles remotos, sensores ambientales, sistemas de control de automóviles y electrodomésticos. El campo de más rápido crecimiento para sistemas integrados y microcontroladores son los dispositivos de Internet de las cosas (IoT) que incluyen un paquete de comunicaciones inalámbricas.

Microprocesadores versus microcontroladores

El término microprocesador a menudo se confunde con microcontrolador. Sin embargo, un microprocesador está diseñado para maximizar la potencia informática en un solo chip; luego se conecta a dispositivos de memoria y dispositivos de E/S a través de un bus de comunicaciones externo. Una MCU, en cambio, integra todas esas funciones en un mismo circuito integrado, o incluso en un único chip. Los microcontroladores son el corazón de un sistema integrado. Un microprocesador es el corazón de una computadora. Sin embargo, no todos los microprocesadores son dispositivos CPU para computadoras personales. Los microprocesadores también se utilizan en dispositivos especializados para unidades de procesamiento de gráficos (GPU) o en otros periféricos, como dispositivos de red.

Resumen de la lección

Una unidad de microcontrolador (MCU) es un circuito integrado que incluye todos los componentes básicos necesarios para una tarea informática específica. Una MCU es generalmente el sistema de control de un sistema integrado. Un sistema integrado es un pequeño dispositivo informático con una tarea específica dentro de un sistema electrónico más grande. Los microcontroladores y los sistemas integrados existen en dispositivos electrónicos de todo tipo, incluidos despertadores, electrodomésticos, dispositivos médicos, controles remotos, sistemas automotrices, sistemas de seguridad, sensores ambientales y más. Un campo de rápido crecimiento para los sistemas integrados son los dispositivos de Internet de las cosas (IoT) que incluyen un paquete de comunicaciones. Los microcontroladores suelen estar personalizados para una función específica y también pueden incluir sistemas adicionales, como convertidores de analógico a digital, convertidores de digital a analógico, temporizadores y comunicaciones.

Una MCU se diferencia de un microprocesador en que la unidad de microcontrolador tiene un procesador, memoria y entrada/salida (E/S) integrados en un solo circuito. Un microprocesador está diseñado para conectarse a un bus de comunicaciones para conectarse con la memoria y otros periféricos. La MCU es el núcleo de un sistema integrado, mientras que el microprocesador es el núcleo de una computadora o un periférico relacionado, como una unidad de procesamiento de gráficos (GPU). Actualmente, existen muchos tipos de microcontroladores en el mercado con tamaños de direcciones de memoria que van desde 4 bits hasta 32 bits. Algunas de las líneas de MCU de la competencia incluyen las familias de microcontroladores PIC, ARM y AVR. El programa o las instrucciones para una MCU pueden estar escritos en un lenguaje ensamblador o en un lenguaje informático de alto nivel. Sin embargo, las instrucciones generalmente se escriben en una memoria EEPROM no volátil en el momento de la producción o fabricación. Muy pocos microcontroladores de producción son programables en campo.

Articulos relacionados