kategória: Obvody mikrokontrolérov
Počet zobrazení: 6809
Komentáre k článku: 0

Programovateľné mikrokontroléry v JavaScripte: ktorý si môžete vybrať, vlastnosti a možnosti

 

V našej krajine, po roku 2010, hobby rádiových nadšencov dostali druhý vietor s príchodom schopnosti programovať mikrokontroléry v programovacích jazykoch na vysokej úrovni, ďaleko od železa. Prvý hromadný projekt bol Arduino Board Family, Tieto mikrokontroléry sme opakovane skúmali vo článkoch, ale dnes budeme hovoriť o mikrokontroléroch, ktoré sú naprogramované v javascripte. Áno! Rovnaký jazyk, ktorý sa používal hlavne pri písaní webových stránok.

Mikrokontrolér programovateľný v JavaScripte

Rozsah pôsobnosti alebo sú takéto mikrokontroléry vôbec potrebné?

Ak z hľadiska elektroniky v týchto zariadeniach zvážime, ktoré budeme zvažovať nižšie, použijú sa štandardné mikrokontroléry. Rozdiel oproti výrobkom od výrobcu je iba v tom, že majú predinštalovaný program zavádzača, aj keď to nazývajte tým, čo chcete, čo vám umožňuje spustiť stiahnutý programový kód a v niektorých prípadoch komunikovať s počítačom cez USB, ak nie je implementovaný do hardvéru.

Čo sú mikrokontroléry pre javascript a iné netradičné jazyky? Medzi amatérmi a profesionálmi sa diskutuje o vývoji elektroniky na špecializovaných fórach, kde niektoré projekty pochvalujú, ako napríklad „Arduino“, zatiaľ čo iní ich ponižujú a zosmiešňujú pre jednoduchosť a abstraktnosť vývojára od väčšiny problémov so železom.

Dôležité: V tejto časti článku hovoríme: „Arduino“, pretože sa stalo východiskovým bodom pre väčšinu milovníkov elektronických zariadení.

Arduíny je možné programovať v C. Ale je to nevyhnutné? Pozrime sa, prečo vo väčšine prípadov nie je potrebná rýchlosť reakcie mikrokontrolérov. Pracovníci Arduino často radi zostavujú regulátory pre automatické zavlažovanie a zahrnutie osvetlenia pre „osvetlenie“ rastlín. Takéto kombinované zariadenie bude vynikajúcou pomocou pre tých, ktorí radi pestujú niečo v bytoch alebo skleníkoch.

Aká rýchlosť je však tu potrebná? Pred 15 až 20 rokmi tu nikto nebude používať mikroradič - amatérsky dizajnér by úspešne spravoval pár operačných zosilňovačov alebo logických prvkov. Ak však hovoríme o vhodnosti diskutovaných mikrokontrolérov pre tieto projekty, potom je tu úplne ľahostajné po tom, za koľko milisekúnd sa zapne podsvietenie alebo keď Zem začne zavlažovať vodu.

Automatický zavlažovací systém

Ďalším populárnym projektom je domáca meteorologická stanica a ukázalo sa, že na tieto účely sú základné schopnosti arduínov dostatočné na čítanie informácií zo senzorov a ich zobrazenie na displeji syntetizujúcom znaky.

V príkladoch riadenia RGB LED pásik pravidelné alebo inteligentné LED diódy s ovládaním „pixel-by-pixel“ (príklad takejto pásky SMART a jej označenie, ktoré vidíte na obrázku nižšie), tiež majú dostatok zdrojov.

SMART páska

Ale kde potrebujete rýchlosť a nie sú vhodné na používanie zjednodušených programovacích jazykov, ako je Scratch alebo javascript? Všetko je veľmi jednoduché:

  • V presných obvodoch;

  • V poplachoch a bezpečnostných systémoch;

  • Vo vysoko presných meracích prístrojoch, ktoré musia rýchlo získavať údaje z ADC, a to aj pre normálne osciloskopy;

  • V zariadeniach vyžadujúcich dlhodobú autonómnu prácu v režime spánku;

  • V prípadoch, keď potrebujete do mikrokontroléra „strčiť“ čo najviac funkcií a kódov, to sa však nedávno nestalo veľmi naliehavou úlohou v súvislosti so znížením nákladov na väčšinu zariadení na trhu.

Vo väčšine týchto úloh je kameňom úrazu rýchlosť a pamäť.Pre optimálne výsledky je v tomto prípade rozumnejšie použiť ani C / C ++, ale Assembler (ASM). Ak sa zameriavate na takéto projekty, znamená to, že máte určité znalosti, čo znamená, že nie sú potrebné.


Záver?

Mikrokontroléry s jednoduchými jazykmi sú potrebné tam, kde neexistujú prísne požiadavky, ako napríklad rýchlosť alebo presnosť merania, ale aj v niektorých situáciách poskytujú presnosť pre nešpecializované zariadenia určené na amatérske použitie.



Espruino - výkonný mikrokontrolér a jednoduchý jazyk javascript

Platforma Espruino je sada softvéru a hardvéru na programovanie mikrokontrolérov v jazyku JavaScript, obsahuje tri prvky:

1. Firmvér mikropočítača s tlmočníkom jazyka JS.

2. Vývojové prostredie pre Espruino Web IDE.

3. Doska s mikrokontrolérom so samotným firmvérom na priamu spoluprácu s Espruino.

Espruino

Myšlienku vyvinul a implementoval Gordon Williams v roku 2013 a získal na ňu prostriedky pomocou platformy crowdfunding (Kickstarter). Podstatou tohto vývoja bolo vyvinúť firmvér Espruino (motor) na jeho načítanie do mikrokontrolérov. Používa sa hlavne na mikrokontroléry rady STM32 s architektúrou ARM-cortex. O výhodnejších zariadeniach na prevádzku sa budeme zaoberať nižšie.

Espruino mikrokontrolér

Ak chcete v JavaScripte písať programy pre mikrokontrolér, musíte si nainštalovať Espruino Web IDE. Toto je program alebo rozšírenie populárneho internetového prehliadača Google Chrome, ktorý sa inštaluje jediným kliknutím.

Po kliknutí na tlačidlo „Inštalovať“ v ponuke „služby“ sa zobrazí aplikácia a do tejto ponuky sa môžete dostať zadaním adresy do adresného riadku: chrome: // apps /

Keď kliknete na ikonu pri šálke kávy, otvorí sa vývojové prostredie, ktoré nie je pozoruhodné ani v prehliadači, ale v samostatnom okne.

Toto prostredie je zaujímavé pre deti aj začiatočníkov, pretože kód môžete zadať ručne alebo použiť grafický editor založený na programovacom jazyku Scratch. Kliknite na ikonu, na ktorú ukazuje šípka.

Espruino Web IDE

Potom sa pravá strana obrazovky, ktorá sa spolu s kódom zmení na svoju inú reprezentáciu:

Grafický editor

Rozhranie je intuitívne, na strednom paneli zhora nadol: otvorte nový súbor, uložte náčrt, načítajte ho do mikrokontroléra.


záver

Dosky Espruino a podobne sú doska plošných spojov s potrebnými prílohami a mikrokontrolér so šitím javascriptového tlmočníka, ktorý spracováva kód a prekladá jeho príkazy do jazyka tých a núl priamo za behu. Zatiaľ čo v klasickej podobe je program pre mikrokontroléry načítaný do mikrokontrolérov už vo forme strojového kódu.

Tento prístup poskytuje výkon pri mnohých úlohách, ako je Arduino.


Recenzia oficiálnej linky Espruino

Originálne espruino

Špecifikácie tohto zariadenia:

  • 54 x 41 mm (polovica kreditnej karty);

  • STM32F103RCT6 32-bitový procesor 72MHz ARM Cortex M3

  • 256 kB flash, 48 kB RAM;

  • Port micro USB

  • Rozsah vstupného napätia od 3,6 do 15V;

  • Konektor batérie (JST PHR-2 2 kolíky);

  • Vstavaný slot na kartu SD;

  • Tri LED (červená zelená a modrá);

  • Platformy pre inštaláciu modulu Bluetooth HC-05;

  • Vzdialenosť medzi mínami - 0,1 "(2,54 mm);

  • 44 pinov GPIO, z ktorých 26 PWM (PWM), 16 ADC (ADC), 3 USART, 2 SPI, 2 I2C a 2 DAC (DAC);

  • Oblasť na doske sa dá použiť na pripojenie viacerých zariadení, ako sú moduly Wi-Fi, servá, rozšíriteľné na 14 výstupov s prúdom do 500 mA.

Doska mikroprocesora Espruino

Vzhľad dosky a podmienené rozdelenie jej uzlov na zóny

Pre mnohých sa rada môže zdať neatraktívna a neúplná, ale bola to iba jej prvá možnosť, potom vyzerali povedomejšie a progresívnejšie. Puck.JS je miniatúrna doska pre prípad, že má na palube Bluetooth a infračervený vysielač.

Puck.JS

Podľa informácií z oficiálnej stránky sú jej technické špecifikácie a vlastnosti nasledujúce:

  • Bluetooth Low Energy;

  • Predinštalovaný tlmočník javascriptu Espruino;

  • Srdcom dosky je nRF52832 SoC - 64MHz ARM Cortex M4, 64kB RAM, 512kB Flash;

  • 8 x 0,1 "porty GPIO (vrátane PWM (PWM), SPI, I2C, UART, analógový vstup);

  • 9 x SMD porty GPIO (vrátane PWM, SPI, I2C, UART);

  • Umývačka podložky vyrobená z ABS plastu;

  • Silikónový kryt s kľúčom;

  • MAG3110 Magnetometer - trojosový merač magnetického poľa;

  • IR vysielač

  • Teplomer, snímač svetla a úroveň nabitia batérie;

  • Tri LED (červená, zelená a modrá);

  • Programovateľné prostredníctvom značky JS NFC.

  • Špendlíky dokážu vnímať dotyk podľa kapacity (princíp činnosti dotykových obrazoviek smartfónov);

  • Hmotnosť 14 g;

  • Veľkosti plastového puzdra: priemer 36 mm, hrúbka - 12,5 mm;

  • Rozmery dosiek: priemer 29 mm, hrúbka 9 mm.

Ukážka práce:

Ďalšou doskou je Espruino Wi-Fi, ako už názov napovedá, jeho vlastnosťou je vstavaný bezdrôtový modul pre Wi-Fi.

Espruino Wi-Fi

Jeho technické vlastnosti:

  • Rozmery dosiek: 30x23 mm;

  • Doska má konektor Micro USB;

  • 21 GPIO: 8 analógových vstupov, 20 PWM, 1 sériový port, 3 SPI, 3 I2C;

  • Doska má 3 LED diódy, z ktorých 2 sú programovateľné užívateľom a 1 zobrazuje činnosť Wi-Fi;

  • Porty sú z hľadiska napätia kompatibilné s Arduino a podporujú 5 voltový signál;

  • 1 tlačidlo;

  • Postavený na mikrokontroléri STM32F411CEU6 32-bitový 100MHz procesor ARM Cortex M4;

  • Pamäť: 512kb flash, 128kb RAM;

  • Wi-Fi komunikácia s ESP8266 (802.11 b / g / n);

  • RTC (hodiny v reálnom čase s externým generátorom).

  • Na doske je nainštalovaný stabilizátor 3,3 V s prúdom do 250 mA, napájacie napätie 3,5 až 5 V.

  • Aktuálna spotreba v režime spánku je až 0,05 mA, čo vám umožňuje pracovať 2,5 roka na batérii 2500 mAh (aj keď je to viac marketingu, ale samotná batéria sa s väčšou pravdepodobnosťou vybije rýchlejšie).

Espruino Wi-Fi

Ukážka predstavenstva:


Espruino Pico - mikrokontrolér pre javascript vo formáte USB kľúčenky

Budeme to posudzovať v samostatnej sekcii, pretože je najbežnejšia v Rusku a blízkom zahraničí, mnohí vďaka spoločnosti Amperka. Doska je vhodná na školenie a implementáciu dokončených projektov. Táto miniatúrna doska sa vkladá priamo do portu USB počítača na programovanie.

Espruino Pico

špecifikácie:

  • Rozmery: 33x15 - pri zohľadnení konektora USB;

  • 22 portov GPIO vrátane: 9 analógových vstupov, 21 PWM, 2 sériových (sériové porty), 3 SPI, 3 I2C;

  • Kolíky GPIO podporujú 5 úrovní signálu, čo vám umožňuje kombinovať dosku so štítmi a zariadeniami pre arduino;

  • Zástrčka USB typu A je súčasťou dosky.

  • Dve LED diódy a jedno programovateľné tlačidlo

  • Postavený na mikrokontroléri STM32F401CDU6 32-bitový procesor 84MHz ARM Cortex M4

  • Pamäť: 384 kb flash, 96 kb RAM

  • Na doske sa pripája regulátor napätia 3,3 V 250 mA, ktorý umožňuje napájanie od 3,5 do 16 V.

  • V režime spánku spotrebováva prúd až do 0,05 mA a výrobca tu nárokuje 2,5-ročnú prevádzku z 1 batérie pri 2500 mAh;

  • Zabudovaný tranzistor s efektom poľa na riadenie vysokonapäťových obvodov.

Toto je najmenšia doska v rade. Pozdĺž jeho okrajov sú vstupno-výstupné porty. V tomto prípade je metalizačná vrstva prítomná ako na samotných otvoroch, tak aj na konci dosky s plošnými spojmi.

Espruino Pico

Rozstup kontaktov je štandardný, umožňuje vám to spájať štandardné PLS linky (toto je názov, ktorý nesú).

Pls linka

Podrobný prehľad tejto rady:


Internetový obchod Amperka a jeho rada dosiek s Javascriptom

Páči sa mi alebo nie, ale najväčším popularizátorom netradičného programovania mikrokontrolérov, najmä v javascripte, je stránka Amperka. Majú kanál na YouTube, kde sa učia, ako používať a programovať svoje produkty, a tiež ukazujú realizáciu projektov pomocou vlastnej rady dosiek z mikrokontrolérov.

Značkovou líniou domáceho výrobcu je ISKRA JS, ktorej názov znie názov diskutovaného jazyka. Jeho technické vlastnosti:

  • Mikrokontrolér: STM32F405RG (32-bitový ARM Cortex M4);

  • Frekvencia hodín: 168 MHz;

  • Flash pamäť: 1024 kB;

  • SRAM: 192 kB;

  • Menovité prevádzkové napätie: 3,3 V;

  • Odporúčané vstupné napätie: 7–15 V alebo 3,6–12 V;

  • Maximálny prúd zo zbernice 5V: 1000 mA;

  • Maximálny prúd zo zbernice 3,3 V: 300 mA (vrátane výkonu mikrokontroléra);

  • Maximálny prúd z kolíka alebo kolíka: 25 mA;

  • Maximálny celkový prúd z kolíkov alebo kolíkov: 240 mA;

  • I / O porty na všeobecné použitie: 26;

  • Porty s podporou PWM: 22;

  • Porty ADC: 12 (12 bit);

  • Porty s DAC: 2 (12 bit);

  • Dostupné hardvérové ​​rozhrania: 4 × UART / sériové, 3 × I²C / TWI, 2 × SPI;

  • Rozmery: 69 × 53 mm.

ISKRA JS

Štruktúra je doska veľmi blízko Arduino Uno R3 - to znamená, že na ňu môžete použiť rozširujúce karty.Aké zaujímavé veci vidíme v technických špecifikáciách? Poďme ich porovnať so všetkými vašimi obľúbenými arduino.

Porovnanie Iskra JS a Arduino UNO r3

Sú odlišné z hľadiska pamäte a schopností a každý z nich nájde svoje uplatnenie. Hoci arduino je vo väčšine prípadov výhodnejšie, pretože ho možno kúpiť za pár stoviek rubľov a iskru - nie.

Amperka tiež predáva mikrokontroléry a mikropočítače ako Raspberry Pi, ako aj školiace súpravy na prácu s nimi. K dispozícii je tiež rad rozširujúcich kariet pre mikrokontroléry, jedná sa o takzvané moduly Troyka. Vyrábajú sa v rovnakej bielej farbe ako ostatné výrobky tejto spoločnosti.

Rovnako ako všetky ostatné štíty, aj výrobky z Amperky sú na doskách s plošnými spojmi obsiahnuté ako hlavná funkčná jednotka - snímač, spínacie zariadenie, hlavný alebo akčný člen a potrebné príslušenstvo k nemu. Už sme vykonali hrubú kontrolu typických modulov pre Arduino - Najobľúbenejšie štíty pre Arduino, tu je všetko analogicky. Na webových stránkach alebo v komunite Amperka nájdete knižnice na použitie s modulmi s Iskra JS alebo Arduino.

Medzi tri moduly patria:

  • joystick;

  • snímač;

  • Modul s relé;

  • Rozširujúce karty (Troyka-štít);

  • Akcelerometre a ostatné snímače polohy;

  • Senzory svetla, blízkosti, prúdu, teploty, Halla, hluku, plynu, alkoholu a ďalších;

  • Prijímače na čítanie značiek NFC;

  • Zariadenia na riadenie motora (mostíky H, vodiči) a ďalšie.

V predaji je zaujímavá sada pre začiatočníkov "IODO".

Samostatné slovo o jednej položke v konfigurácii je # konstruktor. Sú to súčasti na montáž puzdier a nosných častí vašich štruktúr, sú spojené ako detský dizajnér a umožňujú vám vytvoriť normálne stabilné rozloženie s možnosťou bezpečného prenášania, ako aj riešenie na kľúč pre každodenné použitie.

Struktor

Mimochodom, môžete zostaviť svoju školiacu súpravu a školiaca brožúra zo súpravy je k dispozícii na oficiálnej webovej stránke v elektronickej podobe a voľne dostupná.


záver

Ak chcete programovať mikrokontroléry v javascripte, musíte do vzorky nainštalovať príslušný shell. Nie každá kópia však má zodpovedajúci firmvér, pre populárne zariadenia sa však dá nájsť na tematických fórach. Napríklad na BBC Micro: bitovom mikropočítači je proces práce s prostredím znázornený v nasledujúcom videu a inštalácia sa vykonáva v niekoľkých krokoch.

Je pre mikrokontroléry potrebný javascript? Absolútne áno! Pre väčšinu amatérskych úloh nepotrebujete domácich majstrov presnosť ani rýchlosť reakcie a pre množstvo profesionálnych úloh sú schopnosti takýchto platforiem dostatočné. Takýto prístup k programovaniu umožňuje začať vyvíjať zariadenia s takmer žiadnou štúdiou štruktúry a príkazov mikrokontroléra. Ale pri klasickom spôsobe programovania bolo potrebné vziať do úvahy množstvo vecí, ako sú rôzne typy premenných, adresy v pamäti atď.

Pozri tiež na electro-sk.tomathouse.com:

  • Mikrokontroléry PIC pre začiatočníkov
  • Druhy a usporiadanie mikrokontrolérov AVR
  • Ktorú dosku Arduino si vybrať
  • Čo sú displeje Nextion a ako s nimi pracovať?
  • Pripojenie a programovanie Arduino pre začiatočníkov

  •