Spurino: JavaScript dla mikrokontrolerów

Mikrokontroler Atmel, Espurino

Prawdopodobnie kiedykolwiek słyszałeś Spurine, ponieważ projekt ten został ochrzczony imieniem polityka i wojskowego Republiki Rzymskiej. A może przyszedłeś do tego artykułu, szukając więcej informacji, ponieważ już go znasz i chcesz zacząć z niego korzystać.

Tak czy inaczej, spróbuję ci dać klucze o tym, czym jest Espurino i co może zrobić dla Ciebie w przyszłych projektach, a także kilka zaleceń, jak nauczyć się go programować w prosty sposób.

Jakiś czas temu mówiliśmy o Anaconda, kolejny ciekawy projekt dla miłośników Pythona, którzy chcieli harmonogram tablice arduino z tym językiem programowania, który stał się tak popularny. Coś podobnego do tego, co robi MicroPython, ale tym razem z Espurino daje Ci kolejną nową możliwość używania innego języka ...

Co to jest Espurino?

Spurine

Spurine to projekt typu open source mający na celu stworzenie interpretera języka programowania JavaScript dla mikrokontrolerów. Oznacza to, że to kompletne IDE zostało zaprojektowane tak, aby móc programować urządzenia z programowalnym mikrokontrolerem, które mają małe pamięci RAM, na przykład takie, które mają tylko 8kB i są szeroko stosowane w wielu urządzeniach wbudowanych.

Projekt Espurino został stworzony przez Gordona Williamsa w 2012 rokujako próba umożliwienia rozwoju mikrokontrolerów na wielu platformach. Początkowo nie było to oprogramowanie typu open source, po prostu oferowało bezpłatne pobieranie oprogramowania układowego dla mikrokontrolerów STM32.

W 2013 roku projekt miał zrobić bardzo ważny krok, stając się otwarte źródło po bardzo udanej kampanii finansowania na platformie crowdfundingowej Kickstarter. Ta kampania wyszła poza początkowe środowisko programistyczne, poszukując funduszy na produkcję płyt, które mogłyby obsługiwać to oprogramowanie.

Oprogramowanie układowe Espurino jest obecnie objęte licencją Mozilla Public License 2.0, podczas gdy przykładowe kody są objęte licencją MIT, dokumentacja jest objęta licencją Creative Commons Attribution-ShareAlike 3.0, a pliki projektowe sprzętu również podlegają tej ostatniej.

W ten sposób Oficjalna odznaka Espurino, po którym nastąpiłyby liczne wydania innych wersji, tak jak miało to miejsce w przypadku innych podobnych projektów, takich jak Arduino. Ponadto płyty te charakteryzowały się również kompatybilnością z osłonami kompatybilnymi z Arduino, co daje im naprawdę interesujące możliwości dla twórców i majsterkowiczów.

Obecnie projekt cieszy się pewną popularnością, z ważnym społeczność deweloperska oraz mnóstwo samouczków i pomocy, które można znaleźć w Internecie. Dlatego jeśli lubisz JS i programowanie mikrokontrolerów, nigdy nie miałeś tego tak łatwo ...

Kod źródłowy projektu - GitHub

Oficjalna strona internetowa - Spurine

Oprogramowanie układowe - Pobierz (dla różnych płyt)

JavaScript? Mikrokontroler?

Jeśli zacząłeś na tym świecie, możesz się zastanawiać jakie to są warunki lub co mogą wnieść do twoich projektów. Jeśli często nas czytasz, wiesz już, czym jest mikrokontroler, a na pewno znasz też JavaScript lub JS.

Un mikrokontroler, zwany także MCU (Micro Controller Unit), to programowalny układ scalony zdolny do wykonywania niektórych poleceń z pamięci. Może to również odpowiadać definicji procesora, ale w przypadku MCU są one zwykle mniej zaawansowane i wydajne, ukierunkowane na określone zadania, takie jak urządzenia wbudowane.

Ponadto do różnica w stosunku do procesora, mikrokontroler jest układem scalonym, który zawiera sam procesor, oprócz innych bloków funkcjonalnych, takich jak pamięć i system I / O. Chodzi mi o to, że jest to w zasadzie kompletny komputer na jednym chipie ...

Dlatego będziesz mieć tanie i proste urządzenie możesz zaprogramować tak, aby ich dane wejściowe i wyjściowe działały tak, jak chcesz, a tym samym generowały akcje. Możesz sprawić, by odbierał informacje z zewnętrznych czujników lub siłowników i na tej podstawie wysyłał określone sygnały przez swoje wyjścia do innych Części elektroniczne połączony.

W sprawie JavaScript, jest to język interpretowany. Innymi słowy, w przeciwieństwie do skompilowanych, które po kompilacji generują plik binarny, który może być wykonany przez CPU, w przypadku skryptów interpretowanych potrzebne będzie oprogramowanie pośredniczące zwane interpreter, które zinterpretuje polecenia kodu, aby „powiedzieć” CPU, co to jest, co ma do zrobienia.

JS Stało się to bardzo ważne w dzisiejszych czasach ze względu na wiele aplikacji, które ma, zwłaszcza w aplikacjach internetowych. W rzeczywistości został pierwotnie opracowany przez Brendana Eicha z Netscape (później Mocha, potem przemianowany na LiveScript, a na końcu JavaScript).

Ta popularność doprowadziła do wielu zainteresowanych programistów i użytkowników w JavaScript, a projekty takie jak Espurino mogą przybliżyć ich wszystkich do programowania mikrokontrolerów za jego pomocą.

Nawiasem mówiąc, dla zacznij z Espurino IDE, nie będziesz musiał niczego instalować w swoim systemie operacyjnym, jest to środowisko internetowe, z którego możesz korzystać stąd w Twojej ulubionej przeglądarce internetowej.

Chociaż można używać różnych przeglądarek internetowych, do flashowania oprogramowania układowego tych płyt zaleca się użycie przeglądarki Chrome i wtyczki o nazwie Espurino Web IDE, która jest zalecana z oficjalnej strony internetowej i którą można pobrać dla przeglądarki Chrome pod adresem ten link.

Jak nauczyć się JavaScript?

Jeśli nadal nie wiesz, jak programować w JavaScript, powinieneś wiedzieć, że jak w każdym innym języku są książki dla nauka, kursy, samouczki wideo i ogromna ilość zasobów do nauki za darmo. Ale jest jeszcze jeden zasób, o którym być może mniej się mówi i który jest szczególnie interesujący, jeśli chodzi o uczynienie z grywalizacji procedury uczenia się JS.

Mam na myśli gry wideo które pomogą Ci nauczyć się programowania w określonych językach programowania, w tym JS. W tych grach, zamiast używać klawiatury lub myszy do kierowania postacią lub interakcji z wirtualnym środowiskiem, będziesz mieć tłumacza tego języka po jednej stronie ekranu i miejsce, w którym zaczniesz wprowadzać kod (zaczynając od najprostsze, nawet najbardziej zaawansowane).

W ten sposób będziesz sterować grą za pomocą języka programowania, więc podczas swoich gier będziesz jeździć ucząc się prawie nie zdając sobie z tego sprawy aw miarę postępów w misjach twoja wiedza będzie rosła.

Jeśli jesteś zainteresowany tym sposobem nauki języka Espurino, zostawiam cię trochę zasobów do nauczenia JavaScript przy użyciu gier:

Oficjalne talerze Espurino

Płytki kręgosłupa

Po pierwszym opracowaniu talerz W oryginale Espurino pojawiło się więcej projektów dostępnych do użycia z IDE i JS. Jeśli chcesz dowiedzieć się o nich więcej, oto wprowadzenie do każdego z nich:

  • Espurino (oryginał): jest to oryginalna płyta, pierwsza zaprojektowana w ramach tego projektu. Ich cechy to:
    • MCU STM32F103RCT6 32-bitowy 72 MHz ARM Cortex-M3
    • 256 kb pamięci flash, 28 kb pamięci RAM
    • microUSB, złącze SD i złącze baterii zewnętrznej JST PHR-2
    • Czerwone, niebieskie i zielone diody LED
    • Pady umożliwiające podłączenie modułów Bluetooth HC-05
    • 44 GPIO z 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C i 2 DAC.
    • Wymiary: 54x41mm
  • Szczyt Spurino: jest to mała płytka z mikrokontrolerem do uruchamiania projektów JavaScript i kontrolowania rzeczy w ciągu kilku sekund. Jest zaprogramowany przez interfejs USB, aby załadować skrypt, który piszesz o Espurino IDE. Dodatkowo ma ekonomiczną cenę i można go znaleźć z pinami i bez wlutowanych kołków w jego główkach. Więcej szczegółów:
      • 22 GPIO (9 wejść analogowych, 21 PWM, 2 szeregowe, 3 SPI i 3 I2C).
      • Złącze USB-A na płycie.
      • 2 diody LED i 1 przycisk na płytce drukowanej.
      • STM32F401CDU6 32-bitowy mikrokontroler ARM Cortex-M84 4 MHz
      • Pamięć: 384 kb pamięci flash i 96 kb pamięci RAM
      • Wymiary 33x15mm
  • Spurino WiFi: Jest to praktycznie podwójna płyta w stosunku do poprzedniej, tyle że zostały dodane pewne ulepszenia. Na przykład jego rozmiar to 30 x 23 mm, powiększając się, aby zrobić miejsce na chip WiFi ESP8266. Ponadto USB zostało zmienione na microUSB, liczba GPIO została zmniejszona do 21 (8 analogowych, 20 PWM, 1 szeregowy, 3 SPI i 3 I2C). Z drugiej strony mikrokontroler również został wzmocniony, teraz jest to STM32F411CEU6 32-bitowy 100Mhz ARM Cortex-M4 z 512kb pamięci flash i 128 kb RAM.
  • Espurino Puck.js: Jest to w zasadzie inteligentny przycisk Bluetooth, który można zaprogramować dzięki wewnętrznemu mikrokontrolerowi i interpreterowi (preinstalowanemu) z JS. Dodatkowo posiada 52832Mhz ARM Cortex-M4 nRF64 SoC z 64kB RAM i 512Kb flash, GPIO, tag NFC, magnetometr MAG3110, nadajnik IR, wbudowany termometr, a także czujniki światła i poziomu baterii.
  • Spurino Pixl.js: Jest to urządzenie podobne do poprzedniego, ale zamiast przycisku jest to programowalny inteligentny ekran Bluetooth LE. Jego ekran ma wymiary monochromatyczne 128 × 64, podczas gdy pozostałe cechy są podobne do Puck.js.
  • MDBT42Q: to ten sam moduł co Pixl.js i Puck.js, ale z ceramiczną anteną. Reszta parametrów technicznych pokrywa się z poprzednimi dwoma, ale w tym przypadku bez ekranu lub przycisku ...
  • Bransoletka.js: to najnowszy produkt. Jest to poręczny, inteligentny zegarek lub inteligentny zegarek. Będziesz mógł instalować aplikacje i opracowywać nowe funkcje za pomocą JavaScript lub graficznego języka programowania (Blockly). Będziesz potrzebować tylko przeglądarki internetowej, aby móc napisać swoje kody i przesłać je do zegarka… Dodatkowo jest wodoodporny, posiada Bluetooth, GPS, akcelerometr, magnetometr (do ilościowego określania siły i kierunku sygnałów magnetycznych) itp.

Jeśli potrzebujesz Kup trochę tych talerzy Espurino znajdziesz w oficjalny sklep internetowy Z tego projektu. Możesz go również znaleźć za pomocą serii dystrybutorzy urzędnicy przydzieleni do projektu, na przykład niektóre znane sklepy spożywcze, takie jak Adafruit itp.


Treść artykułu jest zgodna z naszymi zasadami etyka redakcyjna. Aby zgłosić błąd, kliknij tutaj.

Bądź pierwszym który skomentuje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.