ENTRADAS

7 nov 2015

MICROCONTROLADORES, QUÉ SON Y PARA QUÉ SIRVEN

Microcontroladores en objetos cotidianos

Seguro que alguna vez has oído hablar de microcontroladores. Probablemente sabes que son unos componentes electrónicos, y que se encuentran en móviles y ordenadores.  Sin embargo, la cosa no queda ahí, ni mucho menos. Hoy en día, casi cualquier aparato usa un microcontrolador o varios: televisores, microondas, porteros automáticos, consolas, lavadoras…, hasta los más insospechados: despertadores, el mando del garaje, relojes digitales, termómetros, juguetes… ¿Tienes una jarra Brita? Pues también lleva uno.

Microcontroladores: Microchip en encapsulado TQFP de 80 pines

Microcontroladores: Microchip en encapsulado TQFP de 80 pines

Los microcontroladores están por todas partes. Esto es así, en gran medida, debido a que sustituyen a muchos circuitos que anteriormente se hacían con multitud de componentes, como puertas lógicas, y que resultan más caros de implementar. Con estos circuitos no me refiero sólo a electrónica digital sino que, también, debido a los conversores analógico-digital y viceversa que incorporan, sustituyen a una gran variedad de diseños analógicos. Además, con los avances tecnológicos, los microcontroladores son tan baratos que, incluso circuitos sencillos son ahora implementados con un micro dedicado. La sustitución de circuitos no es el único motivo de que estos chips hayan prosperado tanto, también hay funcionalidades que no podrían darse de otra forma.

Microcontroladores en pendrive (se muestra coloreado en rojo)

Microcontroladores en pendrive (se muestra coloreado en rojo)

.

Un microcontrolador es esencialmente un circuito programable que es capaz de ejecutar el código que se le ha programado. El chip cuenta físicamente con un número de patillas, unas configurables y otras con una función predeterminada (como las de alimentación). Las configurables son la mayoría, pudiendo ser establecidas como entradas o salidas. El trabajo a nivel básico de un microcontrolador, podríamos decir que, consiste en leer los voltajes de unas patillas (entradas) y establecer el voltaje de otras (salidas), todo esto en función de lo que dicte el programa que esté ejecutando.

Microcontroladores: marca Atmel en encapsulado DIP de 20 pines

Microcontroladores: marca Atmel en encapsulado DIP de 20 pines

La estructura interna de un microcontrolador típico está formada por diferentes módulos que veremos sobre la marcha.

El programa que ejecutará el chip se diseña en un ordenador y se transfiere a la memoria de programa. Un módulo dentro del microcontrolador es el microprocesador o CPU, que se vale de otros módulos, como la memoria RAM, para ejecutar el código grabado en la memoria de programa. Cuando se ha calculado el voltaje de las patillas de salida o se requieren leer las entradas, el microcontrolador usa el módulo I/O (entrada/salida) como intermediario entre el microprocesador y las patillas.

Generalmente, las entradas y salidas manejan voltajes digitales, es decir, nivel alto y bajo. Dependiendo de la tecnología utilizada, el voltaje que representa cada nivel cambia. Una tecnología muy utilizada es la TTL, donde con nivel bajo nos referimos a 0 voltios y con nivel alto a 5 voltios. En casos particulares, los pines (patillas), utilizan voltajes analógicos, es decir, cualquier voltaje siempre que esté en el rango que el microcontrolador pueda soportar.

Periféricos

Unos módulos muy importantes son los periféricos, que permiten al microcontrolador realizar funciones adicionales. Los periféricos son opcionales y, dependiendo del modelo de microcontrolador, contará con más, menos, mejores o peores. De no estar integrados en el chip o de no ser suficientemente potentes para alguna aplicación específica, éstos, pueden ser montados externamente como un chip dedicado y conectados al microcontrolador.

Oscilador

Toda CPU necesita un “reloj” para ejecutar el código. El reloj consiste en un tren de pulsos que marcan la velocidad a la que la CPU trabaja. Esta señal se consigue con un oscilador, que hoy en día suele venir integrado en todos los microcontroladores y suele ser suficiente para la mayoría de aplicaciones. De lo contrario, este módulo en concreto, no es extraño que se implemente de manera externa.

Conversor A/D

El conversor analógico-digital sirve para poder introducir al microcontrolador voltajes que no son digitales. Este módulo permite que las etapas analógicas de un circuito puedan trabajar en conjunto con un microcontrolador. Los conversores A/D integrados en los micros suelen ser de gran precisión, aunque existen aplicaciones muy concretas (por ejemplo, un osciloscopio digital) donde se requiere una precisión extrema, que es prácticamente el único motivo de implementar un conversor externo.

PWM

La modulación por ancho del pulso (PWM) es una técnica muy utilizada en electrónica digital. Una característica de las señales cuadradas es el tiempo que pasa la señal en nivel alto respecto al periodo total. Este cociente se suele expresar como un porcentaje y se denomina “ciclo de trabajo”, duty cycle. Una señal cuadrada perfectamente simétrica tendría un duty del 50%. Con el PWM, el microcontrolador puede generar una señal cuadrada, con duty variable a voluntad.

Duty_cycle_general

Señal cuadrada con PWM. El duty es aprox. 33%

Temporizadores

Muchos microcontroladores implementan uno o varios temporizadores independientes del proceso que está ejecutando el microprocesador, y que pueden ser utilizados para cualquier tarea.

Puertos de comunicación

Unos módulos muy importantes y que permiten expandir las funcionalidades de un micro drásticamente son los puertos de comunicación. Cuando una serie de pines se configuran como puerto de comunicación, estos pueden conectarse a otro chip, un ordenador u otro circuito, de manera que el microcontrolador puede interactuar con ellos. Existen diferentes tipos de puertos de comunicación, que funcionan de manera diferente, pero para el mismo propósito. Cada uno requiere un número determinado de patillas. Algunos ejemplos son el puerto USB, el SPI o el I2C.

Puerto de comunicación JTAG en el centro de la imagen

Puerto de comunicación JTAG (coloreado en rojo)

Bonus: Escritura del programa en la memoria

En la industria hay mayormente dos formas que se usan para trasmitir el programa compilado en el ordenador, a la memoria del microcontrolador. En ocasiones se opta por que el mismo fabricante provea los circuitos integrados con el código pre-programado que el cliente ha facilitado. A continuación, éstos se soldarán a la placa y el montaje continuará.

Otro método consiste en programar el circuito una vez soldado en la placa, conectando el aparato programador a un zócalo o a una zona de la placa habilitados para ello. Dependiendo de la marca del micro, la programación se realiza mediante puertos de comunicación diferentes, como JTAG o ICSP (In Circuit Serial Programming)…

Los microcontroladores son un mundo completo, con infinitos detalles en los que profundizar, y aunque puedan parecer complejos de implementar, esto no es nada comparado con los circuitos que se utilizaban antes de que estos chips llegasen.

AUTOR: PEDRO F. FERNÁNDEZ

Ver todos los artículos del autor para el blog de FdeT

Si quieres participar en el blog como colaborador en alguna de las secciones, envíanos un mail a info@fdet.es 

Grupo FdeT

Compartir:
Facebooktwittergoogle_pluslinkedin

Leave a Reply

A %d blogueros les gusta esto: