Programar fácil con Arduino

Programar fácil con Arduino, entiende cómo funciona el mundo.

  • Blog
  • ¿Quién soy?
  • Podcast
  • Curso Arduino [GRATIS]
  • Curso Domótica [GRATIS]
  • Acceder
Usted está aquí: Inicio / Podcast / 66. La vida del microcontrolador

66. La vida del microcontrolador

Luis del Valle Hernández

http://api.spreaker.com/download/episode/7738563/podcast66.mp3

Podcast: Descargar (34.3MB)

Intel_8742

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.

integraciones de Home Assistant

Integraciones de Home Assistant

En este tutorial voy a hablar de las integraciones de Home Assistant pero antes déjame contarte la historia de Jack, un norteamericano de bien, de los … [+ info...]

dispositivos inteligentes para el hogar

Tipos de dispositivos inteligentes para el hogar

En este artículo voy a hablar de los dispositivos domóticos o dispositivos inteligentes para el hogar que pueden ser integrados dentro de Home … [+ info...]

osciloscopios

Osciloscopio para proyectos con Arduino

Una imagen vale más que mil palabras. Seguro has escuchado esta frase alguna vez y es probable que en la mayoría de las ocasiones lo que dice sea … [+ info...]

Copyright © 2023 · Programar Fácil · Aviso legal

Utilizamos cookies propios y de terceros para mejorar nuestros servicios y experiencia de usuario. Si continua navegando, consideramos que acepta su uso.Aceptar Política de privacidad y cookies
Política de cookies

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Siempre activado
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
GUARDAR Y ACEPTAR