66. La vida del microcontrolador

Feb 8, 2016 · 37m 26s
66. La vida del microcontrolador
Description

En este capitulo vamos a dar un repaso a la vida del microcontrolador. Veremos qué diferencias hay con un microprocesador y el recorrido que ha tenido hasta llegar a los...

show more
En este capitulo vamos a dar un repaso a la vida del microcontrolador. Veremos qué diferencias hay con un microprocesador y el recorrido que ha tenido hasta llegar a los microcontroladores que tenemos en nuestras placas de Arduino. Hace unos días, publicamos un articulo llamado "La vida antes de Arduino", en este articulo también damos un repaso a los microprocesadores y los microcontroladores antes de la llegada de Arduino pero en este capitulo vamos a ver un poco más en detalle a los microcontroladores.

Pero como siempre, si quieres contactar con nosotros lo puedes hacer de diferentes maneras, a través del formulario de contacto, en el e-mail info@programarfacil.com, en Twitter (@programarfacilc) o en Facebook. También puedes mantenerte al día a través de la lista de distribución.

Microprocesador vs Microcontrolador

Un micropocesador es un chip encargado de realizar operaciones complejas a partir de unas instrucciones que solemos llamar programa y unos datos de entrada y salida. Para procesar estos datos y almacenarlos necesitamos conectarlo a través del bus del sistema a la memoria RAM y a los dispositivos de E/S a través de la placa base. Están compuestos por registros, unidad de control, ALU y unidad de cálculo en coma flotante. Es el que mas conocemos todos, el que miramos cuando vamos a comprar un PC (i5, i7, AMD Athlon…)

En cambio un en un microcontrolador tenemos en el mismo chip todo lo anterior, pero además también tenemos en el mismo chip la memoria, las E/S, …. y el programa que vamos a ejecutar. Estos chips están pensados para un propósito en particular, le programamos el código que queremos que ejecute y se dedica a realizar ese conjunto de tareas finito, en cambio un microprocesador esta pensado para un propósito general, es decir para ir ejecutando distintos programas.

Tal vez, lo menos conocido es el microcontrolador, sin embargo nos rodea a cada instante. Ahora mismo es seguro que tengáis uno cerca ya que los puedes encontrar en un mando a distancia, en las llaves del coche, en un frigorífico, en la lavadora y así en un sin fin de aparatos. Si todas estas características, a demás le añadimos que los microcontroladores son mucho más baratos que los microprocesadores se convierten en un elemento esencial para el IoT.

Los microcontrolador PIC

Son una familia de microcontroladores con arquitectura RISC fabricados por Microchip Technology, aunque los primeros microcontroladores no fueron estos sino los basados en la arquitectura CISC por Texas Instruments en 1972.

Programación de un PIC

Para pasarle el código de un ordenador a este microcontrolador necesitamos un dispositivo llamado programador. El programador es un dispositivo electrónico que configura las memorias de los microcontroladores. Se comunica con el ordenador a través del puerto serie o paralelo. El programador genera los voltajes necesarios para la programación. Actualmente se pueden programar directamente en el circuito de destino.

En la web de Microchip tenéis programadores y software para programar estos chips. Los lenguajes típicos son C, Basic y Pascal, aunque son bastantes difícil de programar, mezclan lenguaje C a bajo nivel con lenguaje ensamblador

PICAXE

Estos PICs fueron una revolución en su dia, ya que integraban un firmware preprogramado con un intérprete de BASIC, lo que facilito mucho la programación. Otra mejora que introdujo es poder conectar directamente por el puerto serie a nuestro PC y así elimino la necesidad de un programador.

Placa Parallax BASIC Stamp

Fue el siguiente avance en este mundo, también se programa en BASIC y esta placa ya se va pareciendo más a nuestro Arduino ya que tiene la misma filosofía de ir añadiendo shields.

Los inicios de Arduino

En la época en la que se creo Arduino, sobre 2015, los programadores de PICs utilizaban la placa anterior (BASIC Stamp) y como cuenta su fundador Massimo Banzi quisieron crear una placa accesible para todo el mundo debido a que la BASIC Stamp costaba sobre los 100$ y su dificultosa programación la hacia poco apetecible.

Con estas premisas comenzaron a desarrollar una placa que fuera bastante más barata, con una plataforma accesible y que fuera fácil de programar. Así crearon Arduino, nombre que se inspiraron de un bar donde Massimo pasaba largas horas y se llamaba "Bar di re Arduino (Bar del rey Arduino, un rey Italiano sobre el año 1000).

Como ya sabéis, el fuerte de Arduino es su entorno de programación y los múltiples entornos que han ido saliendo con Scracth for Arduino que nos facilita adentrarnos en este mundo desde el minuto cero.

Y llego Genuino

Como podéis comprobar en la web de Arduino, ahora las placas que venden en Europa se llaman Genuino y fuera de Europa se siguen llamando Arduino. A mediados de 2015 comenzaron fue cuando comenzaron a llamarse en Europa Arduino y extrañados por este cambio de marca nos pusimos a buscar información y aunque no encontramos información oficial descubrimos lo siguiente:

Uno de los fundadores, Gianluca Martino, era el encargado de la producción y este registro por si mismo la marca en Italia. La producción la realizaba la empresa Italiana SmartProjects y esta le pagaba a la fundación Arduino los derechos por producción a través de Gianluca.

Por algún motivo que se desconoce, la relación de Gianluca con el resto de fundadores se rompió y este vendió los derechos de la marca Arduino a la empresa que las producía dejando por tanto de percibir los derechos por producción la comunidad de Arduino.

Esta empresa a pasado a llamarse Arduino slr y continúan vendiendo las placas de Arduino con esa marca. Asi es que las placas que actualmente se vendan como "Arduino made in Italy" pertenecen a esta empresa. Sin embargo esta empresa no tiene los derechos de la marca fuera de Europa por eso las placas de la comunidad fuera de Europa se siguen llamando Arduino.

Parece ser que toda esta historia esta en los tribunales para ver a quien pertenece realmente la marca pero hasta que no se resuelva esta es la situación actual. Por otro lado, esta empresa ha creado la web arduino.org que es una copia de la wed de la comunidad Arduino.cc

Los microcontroladores de Arduino, Atmel

La mayoría de placas de Arduino llevan microcontroladores Atmel (AVR). Aunque estos microcontroladores tiene su propia arquitectura se basan en la arquitectura RISC al igual que los antes mencionados PICs.

La empresa se fundo en 1984 e inicialmente comenzó a construir memorias compitiendo contra el gigante Intel. Siempre han destacado por el bajo consumo de sus componentes y un alto rendimiento y en 1994 es cuando entra en el mercado de los microcontroladores introduciendo por primera ver memoria flash. A partir de ese año ya fueron sacando sucesivamente su gama de microcontroladores AT que encontramos en la placa de Arduino.

ATmega8: El primero que se utilizó para Arduino
CPU: 8-bit AVR
Flash (Kbytes): 8 Kbytes
Opera a 4.5V - 5.5V
Frecuencia (16 MHz)
ATmega328: El que tiene la placa Arduino UNO
CPU: 8-bit AVR
Flash (Kbytes): 32 Kbytes
Opera a 4.5V - 5.5V
Mayor frecuencia (20MHz)
Más E/S
Atmel SAM W25: El que utiliza la placa MKR1000
CPU: 32 Bits
WIFI ( WPA/WPA2)
256KB embedded Flash and 32KB SRAM
Frecuencia 48 MHz
Opera 2.7 to 3.6V
Micros Intel

Pero no solo encontramos microcontroladores Atmel en las placas de Arduino, por ejemplo en la placa Arduino 101 tenemos uno de Intel:

Microcontrolador Intel Curie:
CPU : 32 Bits
Bluetooth
Opera a 3.3V
Frecuencia 32 MHz
Memoria Flash 196KB
SRAM 24KB
Intel Galileo - Intel Edison
Placas de desarrollo compatibles con Arduino.
Intel también apuesta por el código abierto
Intel Edison enfocado a wereables, PC del tamaño de un tarjeta SD
El recurso del dia

ATmel Studio 7

Con este IDE no solo podrás programar los microcontroladores de ATmel, también podrás programar otros PIC o tu placa de Arduino. Este entorno de desarrollo incluye herramientas para los proyectos más codiciosos que te propongas. Utiliza C/C++ o ensamblador para programar el microcontrolador y te permite importar tus proyectos creados con el IDE de Arduino para poder pasar a un nivel superior. Entre los múltiples plugins que incorpora destacamos el espacio de trabajo basado en la nube donde se puede compartir y realizar un seguimiento de código de tu equipo y el visualizador en tiempo de ejecución, en que mediante un potente visualizador de datos nos proporciona con una vista de osciloscopio las mediciones de nuestras entradas.

Muchas gracias a todos por los comentarios y valoraciones que nos hacéis en iVoox, iTunes y en Spreaker, nos dan mucho ánimo para seguir con este proyecto.
show less
Information
Author La tecnología para todos
Organization La tecnología para todos
Website -
Tags

Looks like you don't have any active episode

Browse Spreaker Catalogue to discover great new content

Current

Podcast Cover

Looks like you don't have any episodes in your queue

Browse Spreaker Catalogue to discover great new content

Next Up

Episode Cover Episode Cover

It's so quiet here...

Time to discover new episodes!

Discover
Your Library
Search