mbed - Todo lo que usted necesita saber

Gama de Cortex-A de ARM procesadores de potencia una desconcertante variedad de dispositivos de placa única Computadoras, como el Raspberry Pi 2, a los servidores masivos como los servidores de HP Moonshot. También encontrará en móviles, tablets, reproductores multimedia, y Chromebooks - están por todas partes. Pero ARM también hace una serie de microcontroladores, que son tan populares, tal vez aún más. Sólo en 2014, los socios de ARM envían algunas 4400000000 microcontroladores Cortex-M.

Un microcontrolador es como un microprocesador (es decir, el Cortex-Una gama) en el sentido de que es una CPU, pero con algunos bits desaparecidos. Usted no encontrará un microcontrolador utilizando una GPU, ni una unidad de gestión de memoria compleja (MMU), para abordar virtual. Normalmente correr a velocidades de alrededor de 100 MHz (o menos) y sólo tienen unos pocos kilobytes de memoria.

Showdown: Raspberry Pi 2 vs ...
  • ¿Qué es el Internet de fina ...
  • Raspberry Pi 2 - Revise!
  • Entonces, ¿qué son? Básicamente para todos los trabajos que están por debajo de un microprocesador completo soplado. Por ejemplo, la pantalla en un horno o los circuitos de control de la lavadora usarán un microcontrolador, en lugar de un microprocesador. Algunos vestibles, como el Fitbit, uso microcontroladores, al igual que diversos dispositivos médicos de la pantalla táctil. Usted los encontrará en los coches, en los juguetes, en ventiladores de techo, en las cerraduras inteligentes, en los instrumentos musicales, y en sistemas de entretenimiento. De hecho, la lista sigue y sigue.

    Para los aficionados y desarrolladores, probablemente el área más interesante para microcontroladores en este momento es la Internet de las Cosas (IoT). La posibilidad de conectar dispositivos de uso diario a Internet, y el uso de los datos que envían a tomar decisiones inteligentes.

    Cualquier persona con experiencia en programación de alto nivel de la escuela puede empezar a programar una junta mbed.

    Ahora usted podría pensar que los microcontroladores suenan bastante complejo y de difícil acceso. Pero en realidad no lo son. Gracias a Plataforma mbed de ARM puede hacerse con una pequeña placa con un microcontrolador en él por alrededor de $ 10 o $ 12. Hay incluso todo Kits de iniciación de la IO que proporcionan la red habilitada tableros del microcontrolador, y el software que necesita para empezar a enviar los datos del sensor para arriba en la nube.

    Cortex-M

    Antes de continuar, vale la pena mencionar los diferentes microcontroladores de gama Cortex-M de ARM. Hay microcontroladores actuales 6 Cortex-M: Cortex-M0, M0 +, M1, M3, M4 y M7. El M0 es el más pequeño y el silicio para el chip puede caber en la sección transversal de un pelo!

    A medida que sube el rango de los microcontroladores aumentan en complejidad y velocidad. Microarquitectura del M3 incluye la especulación rama y 32 bits división de hardware, mientras que el M4 añade extensiones DSP y la posibilidad de añadir una unidad de punto flotante (FPU). El M7 es el último microcontrolador ARM y ofrece mayor rendimiento y más características. Por ejemplo, se ofrece 2 veces el rendimiento de DSP que el M4.

    comparar-Cortex-M-diagramLG

    El entorno de desarrollo

    La clave de la plataforma mbed es que todo lo que necesita es un navegador web y una conexión USB para empezar a programar. El entorno de desarrollo es todo basado en la web. Desde dentro de su navegador web puede escribir código y compilarlo para darle un binario. Al conectar la tarjeta en su ordenador, a través de USB, aparecerá como una unidad flash. Para copiar el programa en el tablero todo lo que hay que hacer es arrastrar y soltar el archivo binario de tus descargas carpetas impulsan. Pulse el botón de reinicio en la tabla y el programa comenzará a funcionar.

    El lenguaje de la plataforma mbed es C y C ++. Eso significa que cualquier persona con experiencia en programación de alto nivel de la escuela puede empezar a programar una junta mbed. Y usted no tiene que preocuparse de volver a inventar la rueda, la plataforma mbed ofrece toda una serie de bibliotecas para que su junta directiva se puede comunicar con otros periféricos y con el mundo exterior. Por ejemplo, hay bibliotecas de red, USB, LCD pantallas, audio, motores, actuadores, sensores, NFC, códigos de barras, DSP y así sucesivamente.

    mbed_compiler_import_blinky

    Si no te gustan los sonidos de desarrollo a través de la web para un proyecto a largo plazo, entonces no hay problema. Todo el código y las bibliotecas también pueden ser exportados para su uso por otras cadenas de herramientas, incluyendo el compilador GCC.

    A finales de este año ARM lanzará la próxima versión de su plataforma mbed que incluirá mbed OS y el cliente mbed. mbed OS es un nuevo sistema operativo diseñado para dispositivos IO, que les permite conectarse de forma segura con el resto del mundo. Será de código abierto y está diseñado específicamente para la gama Cortex-M de ARM de microcontroladores. El Cliente mbed es un conjunto de bibliotecas del núcleo que permitirán programas OS mbed para ser portado a equipos basados ​​en Cortex-A y placas que ejecutan Linux. En otras palabras, se puede desarrollar un IO u otro programa conscientes red usando OS mbed en un microcontrolador Cortex-M, y luego simplemente (con sólo una recompilación rápida) portarlo a tablas como el Raspberry Pi o la ODROID C1.

    Las Juntas

    En el momento de la escritura hay más de 50 diferentes tableros mbed disponible. Todo, desde tablas sencillas Cortex-M0 base sin periféricos integrados, a las juntas con una función de pantallas, acelerómetros, redes, conexión Wi-Fi. Hay tablas con conectividad celular, tableros con Bluetooth e incluso un robot.

    Para ayudar a darle una idea de lo que es posible con la plataforma mbed voy a mirar en cuatro tablas y ver lo que cada uno es capaz de hacer. El primer consejo es el FROM-KL25Z de Freescale.

    FROM-KL25Z

    FROM-KL25Z-795x447

    El KL25Z utiliza un Cortex-M0 + Core registró un 48MHz, e incluye 16KB de RAM más de 128 KB de flash. Viene con un built-in 3 LED de color, un acelerómetro de 3 ejes y un sensor táctil capacitiva. Esto hace que sea un tablero de arranque grande. Usted puede recoger uno por sólo $ 13.

    En el mundo de los microcontroladores programa simple que puede escribir es la que parpadeará un LED encendido y apagado. Es equivalente al programa "Hola Mundo" que se utiliza con tanta frecuencia durante tutoriales de lenguajes de programación.

    Para escribir el programa "Blinky" para la KL25Z, de hecho escribirlo para casi cualquier placa mbed, usted va a developer.mbed.org e inicie sesión. Haga clic en el botón "Compiler" en la parte superior derecha de la página y esperar a que la ventana del compilador para abrir.

    En la parte superior derecha de la IDE, por encima de "Detalles de área de trabajo", verá su dispositivo mbed seleccionado actual. Si esta es la primera vez que utiliza mbed entonces será simplemente decir "No hay ningún dispositivo seleccionado." Haga clic en él y haga clic en "Añadir Plataforma". Esto luego abrir la página de plataformas en el sitio web mbed.org. Haga clic en el FROM-KL25Z, y luego en "Añadir a su compilador mbed." De vuelta en el compilador, haga clic en el dispositivo seleccionado en ese momento de nuevo (o "No hay ningún dispositivo seleccionado") y haga clic en FROM-KL25Z. El último paso, haga clic en "Seleccionar plataforma."

    mbed_compiler_select-kl25z

    Para obtener el código fuente para el ejemplo blinky, haga clic en el icono de importación de la barra de herramientas. Buscar y seleccionar mbed_blinky y haga clic en "Importar" Una vez que la importación se hace, verá el siguiente programa C:

    #include "mbed.h" DigitalOut MiLED (LED1) -INT main () {while (1) {MiLED = 1-wait (0.2) -myled = 0-wait (0.2) -}}

    La línea DigitalOut MiLED (LED1) - define una variable llamada MiLED que está vinculado directamente a un pin en el tablero. El pasador en este caso es LED1, que como ya habrá adivinado es la LED. Debido mbed sabe sobre el tablero, esto es suficiente en este momento, usted no necesita saber exactamente qué pin es. Cuando usted compra el tablero obtendrá una pequeña tarjeta con todos los bolos en la lista.

    El resto del código es simple. El programa entra en un bucle infinito y repetidamente conjuntos MiLED a 1, luego hace una pausa, y luego ajustarlo en el 0, entonces se detiene y así sucesivamente. Esto, por supuesto, hace que el flash LED.

    Para compilar el programa, haga clic en "Compilar" en la barra de herramientas y luego arrastrar y soltar el archivo .bin resultante a la junta. Pulse el botón de reinicio y el programa comenzará a funcionar.

    Nordic nRF51822

    Nordic nRF51822

    El nRF51822 utiliza el microcontrolador Cortex-M0 registró en apenas 16MHz e incluye 16K de RAM más de 128K de flash. En términos de rendimiento, que puede parecer un paso atrás en comparación con el KL25Z, pero el nRF51822 es especial, ya que se ha incorporado en Bluetooth 4.1 e incluye una ranura de la batería para que el tablero puede ser alimentado de forma independiente por una sola moneda 2032 batería de células beta. El Cortex-M0 está diseñado para el posible uso de energía más bajo y por tanto es perfecto para aplicaciones Bluetooth independientes.

    Y aquí es donde Android es importante, como un Fitbit u otros wearables, esta placa es el bloque de construcción perfecta para un dispositivo que se comunica con un teléfono Android a través de Bluetooth Low Energy (BLE).

    Uno de los programas de ejemplo dado en el sitio mbed es una Bluetooth Low Energy pulsómetro. El programa configura el tablero para enviar (falso) corazón lata más información utilizando el perfil estándar Bluetooth. En realidad, es bastante simple para agregar un monitor real latido del corazón. Para probar que usted puede utilizar un programa como Píxeles de Percepción BLE Scanner. El escáner buscará dispositivos BLE en el rango de su teléfono y luego permitirle acceder a la información que el consejo está transmitiendo, en este caso un (falso) latido del corazón.

    Cómo usted mismo en marcha y funcionando con el ejemplo BLE es muy similar a la forma en que se obtiene blinky ejecución. Usted necesita asegurarse de que tiene los nRF51822 seleccionadas como su plataforma, y ​​hay que importar el programa BLE_HeartRate. Una vez que el programa ha sido compilado y cargado a su tarjeta, inicie la aplicación de escáner BLE en su teléfono Android y buscar el dispositivo. Se llamará "HRM1."

    placa de aplicación mbed LPC1768 +

    LPC1768 + aplicación tablero-720p

    los LPC1768 no se parece mucho en el exterior, pero por dentro es muy diferente. Así como luciendo un procesador Cortex-M3, tiene 32 KB de memoria y 512 K de flash, pero lo más importante que ha incorporado soporte para Ethernet y USB (como un host o un dispositivo). El poder de la LPC1768 se puede ver cuando lo conecta a su placa de aplicación. La tarjeta viene con un impresionante conjunto de periféricos y sensores incluye una pantalla LCD de 128x32 gráficos, un conector Ethernet RJ45, un joystick de 5 vías, 2 x potenciómetros, un altavoz, un acelerómetro de 3 ejes, 2 x conectores de motor servo, un sensor de temperatura, y una toma para una Zigbee.

    Aunque usted no construir un producto final en el tablero de la aplicación de esta forma de prototipo, sin duda hace un buen punto de partida para la construcción de algo así como un dispositivo IO. Por ejemplo, puede utilizar el sensor de temperatura en el tablero junto con la conexión Ethernet para cargar periódicamente la temperatura ambiente actual a un servicio en la nube como ThingSpeak.

    También sería posible integrar el tablero con su dispositivo Android, otra vez usando un servicio como ThingSpeak. Se puede escribir una aplicación para enviar comandos a su LPC1768 para realizar tareas de automatización del hogar, pregunte por los datos del sensor específicos, o incluso llegar a realizar una tarea para ti como Tweet algo o enviar un correo electrónico. De hecho, el único límite es tu imaginación.

    Mbot

    mbot_Outrageous_Circuits-720p

    Si quieres algo que es un poco más divertido que los dispositivos IO entonces te recomiendo el Mbot de Circuitos indignantes. Es un robot habilitado mbed con sensores reflectantes, LED y un zumbador. En primer encendido, Mbot está cargado con un software que hace bailar sobre una mesa sin caerse. Lo hace mediante la lectura de los dos sensores reflectantes en la parte delantera. Si detecta ninguna reflexión, se sabe que es el borde de una mesa y lo hará copia de seguridad y turno.

    Sólo cuesta $ 30 y ofrece una gran introducción a la programación de microcontroladores. Circuitos Outrageous proporcionan todo el código fuente para el programa predeterminado y también proporciona la documentación completa, incluyendo esquemas, pines y guías de hackers.

    Envolver

    Como he mencionado antes, hay más de 50 tablas disponibles que mbed apoyo. Estos cuatro son realmente sólo un breve resumen de algunas de las cosas que puedes hacer con un microcontrolador Cortex-M y la plataforma mbed. Una vez que se agrega en la comunicación con el teléfono inteligente Android, o la conectividad con la nube, entonces las posibilidades son infinitas.

    ¿Has probado mbed? ¿Tiene una idea aseada la IO? Por favor, háganoslo saber en los comentarios a continuación.


    » » » mbed - Todo lo que usted necesita saber