Espurino: estigui habilitat per a microcontroladors

microcontrolador Atmel, Espurino

És probable que hagis escoltat alguna vegada Espurí, Com s'ha batejat aquest projecte amb nom de polític i militar de la República Romana. O potser hagis arribat fins a aquest article buscant més informació perquè ja el coneixes i vols començar a usar-lo.

Sigui com sigui, intentaré donar-te les claus del que és Espurino i el que podria fer per tu per als teus futurs projectes, a més d'algunes recomanacions per aprendre a programar de forma senzilla.

Fa un temps et comentem sobre Anaconda, Un altre interessant projecte per als amants de Python que volien programar plaques Arduino amb aquest llenguatge de programació que s'ha tornat tan popular. Una cosa semblant al que fa micropython, Però aquest cop, amb Espurino, et porta una altra nova oportunitat usant un altre llenguatge diferent ...

Què és Espurino?

Espurí

Espurí és un projecte de codi obert per crear un intèrpret de el llenguatge de programació JavaScript per microcontroladors. És a dir, aquest complet IDE ha estat dissenyat per poder programar dispositius amb un microcontrolador programable que tinguin petites memòries RAM, com alguns que només compten amb 8KB i molt usats en multitud d'aparells encastats.

El projecte Espurino va ser creat per Gordon Williams el 2012, Com un intent de permetre el desenvolupament de microcontroladors en múltiples plataformes. Inicialment no era de codi obert, simplement s'oferia la descàrrega de l'firmware gratuïta per MCUs STM32.

El 2013 el projecte donaria un pas molt important, convertint-se en codi obert després d'una campanya molt reeixida de finançament a la plataforma de crowdfunding Kickstarter. Aquesta campanya anava més enllà de l'entorn de desenvolupament inicial, buscant fons per fabricar també plaques que poguessin suportar aquest programari.

El firmware de Espurino està ara sota llicència Mozilla Public License 2.0, mentre que els codis d'exemple ho estan sota MIT License, la documentació sota Creative Commons Attribution-ShareAlike 3.0 i els arxius de disseny de maquinari sota aquesta última també.

Així nació també la placa oficial Espurino, Que vindria seguida de nombrosos llançaments d'altres versions com ha passat amb altres projectes similars com Arduino. A més, aquestes plaques també presentaven compatibilitat per escuts compatibles amb Arduino, el que les dota d'unes capacitats realment interessants per makers i DIY.

Actualment el projecte té certa popularitat, comptant amb una important comunitat de desenvolupament i multitud de tutorials i ajuda que podràs trobar a Internet. Per tant, si t'agrada JS i programar microcontroladors, mai ho has tingut tan fàcil ...

Codi font de el projecte - GitHub

Lloc web oficial - Espurí

firmware - Descarregar (per a les diferents plaques)

JavaScript? Microcontrolador?

Si has començat en aquest món, potser et estiguis preguntant què són aquests termes o què et poden aportar per als teus projectes. Si ens llegeixes sovint ja sabràs què és un microcontrolador, i segur que també coneixes JavaScript o JS.

Un microcontrolador, També anomenat MCU (Micro Controller Unit), és un xip programable capaç d'executar certes ordres des d'una memòria. Això pot coincidir també amb la definició d'una CPU, però en el cas d'un MCU, solen ser menys avançats i potents, dirigits a certes tasques específiques, com a dispositius encastats.

A més, a diferència d'una CPU, El microcontrolador és un circuit integrat que inclou al seu interior la pròpia CPU, a més d'altres blocs funcionals com poden ser la memòria i el sistema d'E / S. És a dir, bàsicament és un ordinador completa en un sol xip ...

Per tant, disposaràs d'un dispositiu barat i senzill que podràs programar perquè els seus entrades i sortides actuïn com et vingui de gust i generar així accions. Pots fer que rebi informació de sensors o actuadors externs, i que en funció d'això enviï certs senyals per les seves sortides a altres components electrònics connectats.

Quant a JavaScript, Es tracta d'un llenguatge interpretat. És a dir, a diferència dels compilats que després de la compilació generen un binari que pot executar-se per una CPU, en el cas dels scripts interpretats es necessitarà un programari intermediari anomenat intèrpret que interpretarà les ordres de el codi per «dir-li» a la CPU ho que ha de fer.

JS ha cobrat una gran importància en l'actualitat per les múltiples aplicacions que té, especialment en web apps. De fet, va ser desenvolupat inicialment per Brendan Eich de Netscape (llavors es va cridar Mocha, després renombrado LiveScript i finalment com JavaScript).

Aquesta popularitat ha fet que hi hagi gran quantitat de programadors i usuaris interessats en JavaScript, i projectes com Espurino poden acostar a tots ells a programar microcontroladors amb ell.

Per cert, per començar amb Espurino IDE, No hauràs d'instal·lar res en el teu sistema operatiu, és un entorn basat en web que podràs fer servir des d'aquí mateix al navegador web favorit.

Tot i que es poden usar diversos navegadors web, per flashejar el firmware d'aquestes plaques es recomana usar Chrome i un complement anomenat Espurino web IDE que es recomana des de la web oficial i que pots obtenir per al teu Chrome a aquest enllaç.

Com aprendre JavaScript?

Si encara no saps programar en JavaScript has sap que, com passa en qualsevol altre llenguatge, hi ha llibres per aprenentatge, Cursos, videotutorials, i una enorme quantitat de recursos per aprendre pagant i gratuïtament. Però hi ha un altre recurs de què potser es parla menys i que resulta especialment interessant per fer de la gamificació el procediment d'aprenentatge de JS.

M'estic referint a els videojocs que t'ajuden a aprendre a programar amb certs llenguatges de programació, entre ells JS. Amb aquests jocs, en comptes d'usar el teclat o ratolí per dirigir a el personatge o interactuar amb l'entorn virtual, el que tindràs és un intèrpret d'aquest llenguatge en un lateral de la pantalla i on començaràs a introduir codi (començant pels més simples fins als més avançats).

D'aquesta forma, controlaràs el joc usant llenguatge de programació, de manera que durant les teves partides aniràs aprenent gairebé sense adonar-te i conforme avances en les missions teus coneixements aniran creixent.

Si t'interessa aquesta forma d'aprenentatge per començar amb Espurino, aquí et deixo alguns recurs per aprendre JavaScript mitjançant jocs:

Plaques Espurino oficials

Espurino plaques

Després del primer desenvolupament de la placa original de Espurino van venir més projectes disponibles per utilitzar amb l'IDE i JS. Si vols conèixer més sobre ells aquí et deixo una introducció de cada un:

  • Espurí (original): És la placa original, la primera a ser dissenyada sota aquest projecte. Les seves característiques són:
    • MCU STM32F103RCT6 de 32 bits a 72Mhz ARM Cortex-M3
    • 256 Kb de memòria flash, 28Kb de RAM
    • microUSB, connector per a SD, i connector de bateria externa JST PHR-2
    • LEDs vermell, blau i verd
    • Pads que permeten la connexió de mòduls Bluetooth HC-05
    • 44 GPIO amb 26 PWM, 16 ADC, 3 UARTS, 2 SCI, 2 I2C i 2 DAC.
    • Dimensions: 54x41mm
  • Espurino Pic: És una petita placa amb un microcontrolador per començar a córrer els teus projectes JavaScript i controlar coses en qüestió de segons. Es programa mitjançant la seva interfície USB per carregar el script que escriguis sobre l'IDE de Espurino. A més, té un preu econòmic i la pots trobar amb pins i sense pins soldats en els seus capçals. Més detalls:
      • 22 GPIO (9 analògics d'entrada, 21 PWM, 2 serial, 3 SCI i 3 I2C).
      • Connector USB-A en placa.
      • 2 LEDs i 1 botó a la PCB.
      • MCU STM32F401CDU6 de 32 bits a 84Mhz ARM Cortex-M4
      • Memòria: 384 Kb de flash i 96Kb de RAM
      • Dimensions de 33x15mm
  • Espurí WiFi: És una placa pràcticament bessona a l'anterior, només que se li han afegit algunes millores. Per exemple, la seva grandària és de 30x23mm, creixent per deixar espai a un xip ESP8266 WiFi. A més, s'ha canviat l'USB per microUSB, s'ha reduït el nombre de GPIO a 21 (8 analògics, 20 PWM, 1 serial, 3 SCI i 3 I2C). D'altra banda, el microcontrolador també s'ha potenciat, ara és un STM32F411CEU6 de 32 bits a 100 MHz ARM Cortex-M4 amb 512kb de memòria flash i 128 kb de RAM.
  • Espurí Puck.js: Bàsicament és un botó intel·ligent Bluetooth que pots programar gràcies a la seva microcontrolador intern i a l'intèrpret (preinstal·lat) amb JS. A més, té un SoC nRF52832 ARM Cortex-M4 a 64Mhz amb 64KB de RAM i 512Kb de flash, GPIO, NFC tag, magnetòmetre MAG3110, transmissor IR, termòmetre incorporat, així com llum i sensors de el nivell de la bateria.
  • Espurí Pixl.js: És un dispositiu similar a l'anterior, però en comptes d'un botó és una pantalla intel·ligent Bluetooth LI programable. La seva pantalla té unes dimensions de 128 × 64 monocroma, mentre que la resta de característiques són similars a l'Puck.js.
  • MDBT42Q: És el mateix mòdul que té Pixl.js i Puck.js, però amb una antena ceràmica. La resta de característiques tècniques coincideixen amb els dos anteriors, però sense pantalla ni botó en aquest cas ...
  • Bangle.js: És el producte més nou. Es tracta d'un wearable, un smart watch o rellotge intel·ligent. Podràs instal·lar apps i desenvolupar noves funcions usant JavaScript o un llenguatge de programació gràfica (Blockly). Només et caldrà un navegador web per poder escriure els teus codis i carregar-los en el rellotge ... A més, és resistent a l'aigua, té Bluetooth, GPS, acceleròmetre, magnetòmetre (per quantificar la força i direcció de senyals magnètiques), etc.

Si necessites comprar-ne alguna d'aquestes plaques Espurino pots trobar-les en la botiga del web oficial d'aquest projecte. També ho pots trobar a través d'una sèrie de distribuïdors oficials que té el projecte assignats, com algunes famoses les palpentes com Adafruit, etc.


Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.