Spurino: JavaScript mo microcontrollers

Atmel microcontroller, Espurino

Atonu na e faʻalogo Spurine, aua o lenei poloketi na papatisoina ma le igoa o le faipule ma le militeli tamaloa o le Roman Republic. Pe atonu na e sau i lenei tusitusiga saili mo nisi faʻamatalaga aua ua uma ona e iloa ma manaʻo e amata faʻaaoga ia.

Tusa lava pe faʻapea, o le a ou taumafai e avatu ia te oe o ki e uiga i le mea Espurino o ma pe o le a le mea e mafai ona fai mo oe mo au lumanaʻi poloketi, faʻapea foi ma nisi o fautuaga e aʻoaʻo ai pe faʻapefea ona faʻatulagaina i se faigofie auala.

I se taimi ua tuanaʻi na matou taʻu atu ai ia te oe e uiga i Anaconda, o se isi galuega manaia mo e fiafia i ai le Python na manaʻomia faʻatulagaga laupapa arduino ma lenei polokalame polokalame lea ua avea sili lauiloa. Se mea e tali tutusa ma le mea na te faia MicroPython, ae ole taimi lea, ma Espurino, e aumaia ia oe le isi avanoa fou e faʻaaoga ai se isi gagana ...

O le a le Espurino?

Spurine

Spurine o se tatala punaoa poloketi e fausia ai se JavaScript polokalame gagana faʻamatalaʻupu mo microcontrollers. O lona uiga, o lenei IDE maeʻa na fuafuaina ina ia mafai ona faʻapolokalameina masini ma se polokalame e mafai ona faʻatulagaina microcontroller o loʻo iai nai mea e manatua ai e le RAM, pei o nisi e naʻo le 8kB ma o loʻo faʻaaogaina lautele i le tele o masini faʻaofi.

O le Espurino poloketi na faia e Gordon Williams i le 2012, o se taumafaiga e faʻatagaina le atinaʻeina o microcontrollers luga tele fausaga opea. Muamua e leʻi matala punaoa, na o le ofoina atu o se maua fua firmware download mo STM32 MCUs.

I le 2013 o le poloketi o le a faia se laʻa sili ona taua, avea avanoa tatala ina ua maeʻa manuia taumafaiga faʻatupeina i luga o le Kickstarter crowdfunding platform. O lenei tauvaga na alu i tala atu o le amataga atinaʻe siʻosiʻomaga, saili tupe e faʻatulagaina ai laupapa e mafai ona lagolagoina lenei polokalama.

Ua laiseneina nei le firmware a Espurino i lalo o le laisene laisene o le Mozilla Public 2.0, ae o vaega faataʻitaʻi o loʻo i lalo o le MIT Laisene, o faʻamaumauga i lalo o le Creative Commons Attribution-ShareAlike 3.0, ma faila faila o masini i lalo o le vaega mulimuli.

Ole ala lea ole Espurino faʻailoga aloaia, lea o le a mulimuli mai ai ma le tele o faʻalauiloaina o isi faʻamatalaga e pei ona tupu ma isi lava poloketi pei o le Arduino. I se faʻaopopoga, o nei laupapa faʻaalia ai foi le fetaui lelei mo Arduino-fetaui talita, lea e maua ai e latou ni mea sili ona manaia gafatia mo tufuga ma DIYers.

Taimi nei o le poloketi ei ai sina lauiloa, ma le taua atinae nuu ma le anoanoaʻi o faʻatonuga ma fesoasoani e mafai ona e mauaina i luga o le Initaneti. O le mea lea, afai e te fiafia i le JS ma polokalame microcontrollers, e te leʻi mauaina muamua faigofie ...

Polokalama faʻavae punaoa - GitHub

'Upega tafaʻilagi aloaʻia - Spurine

Firmware - Lalotoso (mo papatusi eseese)

JavaScript? Laiti uila?

Afai na e amata i lenei lalolagi, oe ono ono mafaufau o a ia faaupuga poʻo a ni mea latou te mafai ona foaʻi i au galuega faatino. Afai e te faitau soʻo ia matou matou o le a e iloa le mea o le microcontroller, ma e mautinoa foʻi e te iloa JavaScript poʻo le JS.

Un microcontrollerFaʻaigoaina foʻi MCU (Micro Controller Unit), o se polokalame e mafai ona faʻatinoina mafai ona faʻatinoina ni faʻatonuga mai le mafaufau. Atonu e tutusa le faʻauigaina o le CPU, ae i le tulaga o le MCU, e masani lava ona le alualu i luma ma mamana, faʻatutuina nisi o galuega faʻapitoa, e pei o masini faʻaaogaina.

E faaopopo i le eseʻesega mai le CPU, o le microcontroller o se tuʻufaʻatasia o tuʻufaʻatasia e aofia ai le CPU lava ia, faʻapea foi ma isi poloka e pei o le manatuaina ma le I / O polokalama. Ou te fai atu, o le mea moni o se komepiuta atoa i luga o le tasi malamala ...

O le mea lea, o le ae maua se taugofie ma faigofie masini lena oe mafai polokalama ina ia ona sao ma galuega faatino faʻagaioia e pei ona e manaʻo ai ma faʻapea ona maua ai gaioiga. Oe mafai ona faia ia maua faʻamatalaga mai fafo sensors po o actuators, ma faʻavae i luga o lena auina atu ni faʻailoga mautinoa e ala i ana galuega faatino i isi Vaega eletise fesoʻotaʻi

E uiga i JavaScript, o se gagana faʻamatalaina. I nisi upu, e le pei o le tuʻufaʻatasia a maeʻa tuʻufaʻatasia maua se binary e mafai ona faʻataunuʻuina e le CPU, i le tulaga o faʻamatalaina tusitusiga, o se mea faufautua faufautua e taua o se faʻamatala upu o le a manaʻomia, o le a faʻauiga tulafono o le tulafono e "taʻu" le CPU o le a lea mea. o le a le mea e tatau ona fai.

JS Ua avea taua tele i aso nei ona o le tele o talosaga o loʻo ia te ia, ae maise lava i upega tafailagi polokalama. O le mea moni, na muamua fausia e Netscape's Brendan Eich (ona Mocha, ona toe faʻaigoa lea o LiveScript, ma mulimuli ane JavaScript).

O lena lauiloa na taʻitaʻia ai i le tele numera o fiafia polokalame ma tagata faʻaaoga i le JavaScript, ma poloketi pei o Espurino mafai ona aumaia uma latou latalata i polokalame microcontrollers faʻatasi ma ia.

I le ala, mo amata i le Espurino IDE, oe le tau faʻapipiʻiina se mea i lau faʻagaioiga polokalama, o se 'upega tafaʻilagi siʻosiʻomaga e mafai ona e faʻaaogaina mai iinei i lau 'upega tafaʻilagi e te fiafia tele iai.

E ui lava e mafai ona faʻaaogaina ni 'upega tafaʻilagi eseese, ae o le emo o nei laupapa ua fautuaina ai le faʻaaogaina o le Chrome ma le plugin ua faʻaigoaina o le Espurino Web IDE e fautuaina mai le upega tafailagi aloaia ma e mafai ona e mauaina mo lau Chrome i le lenei sootaga.

Faʻafefea ona aʻoaʻo le JavaScript?

Afai e te le o iloa pe faʻapefea ona fai polokalame i le JavaScript, e tatau ona e iloa lena mea, pei o isi lava gagana, e iai tusi mo aʻoaʻoga, vasega, aʻoaʻoga vitio, ma le anoanoaʻi o mea e aʻoaʻo ai fua. Ae o loʻo i ai seisi punaoa atonu e le o talanoaina tele ma e sili ona manaia mo le faia gamification le aʻoaʻoga auala o JS.

O lea ou te taua o videogames e fesoasoani ia te oe aʻoaʻo e polokalame i ni polokalame faʻapitoa, e aofia ai le JS. I nei taʻaloga, nai lo le faʻaaogaina o le piano feaveaʻi poʻo le isumu e faʻatonutonu ai le amio pe fesoʻotaʻi ai ma le siosiomaga tafaʻilagi, o le mea o le a ia te oe o se faʻamatala upu o lenei gagana i le tasi itu o le pupuni ma le mea o le a amata ai ona e ulufale i le code (amata i le sili ona faigofie e oʻo lava i le sili atu ona maualuga).

I lenei auala, oe o le a faʻatonutonu le taʻaloga faʻaaogaina polokalame gagana, o lea i taimi o au taʻaloga o le a e alu ai aoao toeititi aunoa ma le iloaina ma a o e agaʻi i luma i misiona o le a tupu lou poto.

Afai e te fiafia i lenei auala o le aʻoaʻoina e amata i Espurino, o lea ou te tuua oe ni punaoa e aʻoaʻo ai JavaScript faʻaaogaina o taʻaloga:

Pepa aloaia Espurino

Pepa Spurine

Ina ua maeʻa le muamua atinaʻe o le ipu Espurino's original sau tele poloketi avanoa e faʻaaoga ma le IDE ma le JS. Afai e te fia iloa atili e uiga ia latou, o se faʻalauiloa atu ia taʻitasi:

  • Espurino (original): o le uluaʻi ipu, o le muamua na fuafuaina i lalo o lenei poloketi. O latou uiga o:
    • STM32F103RCT6 32-sina 72Mhz ARM Cortex-M3 MCU
    • 256Kb o manatua malamalama, 28Kb o RAM
    • microUSB, SD faʻafesoʻotaʻiga, ma JST PHR-2 fesoʻotaʻi pa i fafo
    • Moli, lanumoana ma lanumeamata TAITAIINA
    • Pads e faʻatagaina le tuʻufaʻatasia o Bluetooth modules HC-05
    • 44 GPIO ma 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C ma 2 DACs.
    • Fua: 54x41mm
  • Spurino tumutumu: o se tamaʻi laupapa ma se microcontroller e amata tamoʻe lau JavaScript poloketi ma faʻatonutonu mea i se mataupu o sekone. Ua faʻapolokalameina e ala i lana USB interface e uta ai le tusitusiga o loʻo e tusia i luga ole Espurino IDE. I se faʻaopopoga, o loʻo i ai se tau taugofie ma e mafai ona e mauaina i pine ma aunoa ma ni pou faʻamau i luga o ona ulu. Nisi faʻamatalaga:
      • 22 GPIO (9 analog input, 21 PWM, 2 serial, 3 SPI ma le 3 I2C).
      • USB-O se fesoʻotaʻiga i luga o le laupapa.
      • 2 LEDs ma le 1 button ile PCB.
      • STM32F401CDU6 32-sina 84Mhz ARM Cortex-M4 MCU
      • Manatua: 384 Kb o flash ma 96Kb o RAM
      • 33x15mm fua
  • Spurino WiFi: O se laupapa masaga masani i le muamua, na o nai mea faʻaleleia ua faʻaopopo. Mo se faʻataʻitaʻiga, o lona telē e 30x23mm, o loʻo tupu e faʻaavanoa ai se avanoa mo le chips a le ESP8266 WiFi. I se faʻaopopoga, ua suia le USB i le microUSB, o le numera o GPIO ua faʻaititia i le 21 (8 analog, 20 PWM, 1 serial, 3 SPI ma le 3 I2C). I leisi itu, o le microcontroller ua faʻamalosia foi, o lenei ua avea ma STM32F411CEU6 32-bit 100Mhz ARM Cortex-M4 ma le 512kb o manatua malamalama ma 128 kb o RAM.
  • Espurino Puck.js: O le mea masani lava o le Bluetooth atamai button e mafai ai ona e polokalama faʻafetai i lana microcontroller i totonu ma le faʻamatala upu (muamua-faʻapipiʻi) ma le JS. I se faʻaopopoga, o loʻo i ai le 52832Mhz ARM Cortex-M4 nRF64 SoC ma le 64kB o RAM ma le 512Kb o flash, GPIO, NFC tag, MAG3110 magnetometer, IR transmitter, built-in thermometer, faʻatasi ai foʻi ma moli ma le maualuga o le maa.
  • Spurino Pixl.js: O se masini e tutusa ma le muamua, ae nai lo le faʻamau o se programmable Bluetooth LE atamai lau. O lona laupepa ei ai fuataga o le 128 × 64 monochrome, ae o isi vaega o le uiga e tutusa ma le Puck.js.
  • MDBT42Q: o le tutusa module pei Pixl.js ma Puck.js, ae ma se antenna keramika. O totoe o le tomai faʻapitoa fesoʻotaʻiga ma le muamua lua, ae aunoa ma le pupuni poʻo le faʻamau i lenei tulaga ...
  • Bangle.js: o le oloa fou. O se uati e mafai ona ofuina, o se uati poto poʻo se uati atamai. O le a mafai ona e faʻapipiʻi polokalama ma atiaʻe ni galuega fou e faʻaaoga ai le JavaScript poʻo le polokalame faʻapitoa o polokalame (Blockly). E naʻo le web browser e te manaʻomia e mafai ai ona e tusia au tulafono ma tuʻu i luga o le uati.

Afai e te manaʻomia faatau mai o nei Espurino ipu e mafai ona e mauaina i totonu o le faleoloa 'upega tafaʻilagi aloaia Mai lenei poloketi. E mafai foʻi ona e mauaina e ala ile tele o tufatufaina atu tagata ofisa tofia i le poloketi, e pei o nisi lauiloa faleoloa e pei o Adafruit, ma isi.


O mataupu o le tusitusiga e tausisi ia tatou mataupu silisili o amio lelei faʻatonu. E lipotia se mea sese kiliki iinei.

Ia avea muamua ma faamatalaga

Tuʻu lau faamatalaga

o le a le lomia lou tuatusi imeli. O nofoaga e manaʻomia e makaina *

*

*

  1. E tali atu mo faʻamatalaga: Miguel Ángel Gatón
  2. Faamoemoega o faʻamatalaga: Pulea le SPAM, faʻamatalaga pulega.
  3. Tulaga faʻatulafonoina: Lau maliega
  4. Fesoʻotaʻiga o faʻamatalaga: O faʻamatalaga o le a le fesoʻotaʻi atu i isi vaega vagana i tulafono faʻatulafonoina.
  5. Teuina o faʻamatalaga: Faʻamaumauga tuʻufaʻatasia e Occentus Networks (EU)
  6. Aia Tatau: I soo se taimi e mafai ai ona e faʻatapulaʻaina, toe maua ma aveʻese au faʻamatalaga.