Spurino: JavaScript untuk pengawal mikro

Pengawal mikro Atmel, Espurino

Anda mungkin pernah mendengar Spurine, kerana projek ini telah dibaptiskan dengan nama seorang ahli politik dan tentera dari Republik Rom. Atau mungkin anda telah datang ke artikel ini untuk mencari lebih banyak maklumat kerana anda sudah mengetahuinya dan ingin mula menggunakannya.

Bagaimanapun, saya akan berusaha memberi anda Kunci-kunci mengenai apa itu Espurino dan apa yang dapat dilakukannya untuk projek masa depan anda, serta beberapa cadangan untuk mempelajari cara memprogramkannya dengan cara yang mudah.

Beberapa ketika yang lalu kami memberitahu anda soal Anaconda, satu lagi projek menarik untuk pencinta Python yang mahukan jadual papan arduino dengan bahasa pengaturcaraan ini yang menjadi begitu popular. Sesuatu yang serupa dengan yang dilakukannya mikropython, tetapi kali ini, dengan Espurino, ini memberi anda peluang baru menggunakan bahasa yang berbeza ...

Apa itu Espurino?

Spurine

Spurine adalah projek sumber terbuka untuk membuat jurubahasa bahasa pengaturcaraan JavaScript untuk mikrokontroler. Artinya, IDE lengkap ini telah dirancang untuk dapat memprogramkan peranti dengan mikrokontroler yang dapat diprogramkan yang memiliki memori RAM kecil, seperti beberapa yang hanya memiliki 8kB dan digunakan secara meluas di banyak peranti tertanam.

Projek Espurino dibuat oleh Gordon Williams pada tahun 2012, sebagai usaha untuk membenarkan pengembangan mikrokontroler pada pelbagai platform. Pada mulanya ia bukan sumber terbuka, ia hanya menawarkan muat turun firmware percuma untuk STM32 MCU.

Pada tahun 2013 projek ini akan mengambil langkah yang sangat penting, menjadi sumber terbuka selepas kempen pendanaan yang sangat berjaya di platform crowdfunding Kickstarter. Kempen ini melampaui lingkungan pengembangan awal, mencari dana untuk juga membuat papan yang dapat mendukung perangkat lunak ini.

Firmware Espurino kini dilesenkan di bawah Mozilla Public License 2.0, sementara kod sampel berada di bawah Lesen MIT, dokumentasi di bawah Creative Commons Attribution-ShareAlike 3.0, dan fail reka bentuk perkakasan di bawah yang terakhir juga.

Ini adalah bagaimana Lencana rasmi Espurino, yang akan diikuti oleh banyak rilis versi lain seperti yang telah berlaku dengan projek lain yang serupa seperti Arduino. Di samping itu, papan ini juga menampilkan keserasian untuk perisai yang serasi dengan Arduino, yang memberi mereka beberapa keupayaan yang sangat menarik untuk pembuat dan DIYers.

Pada masa ini projek ini mempunyai populariti, yang penting komuniti pembangunan dan banyak tutorial dan bantuan yang anda dapati di Internet. Oleh itu, jika anda suka JS dan pengaturcara mikrokontroler, anda tidak pernah semudah itu ...

Kod sumber projek - GitHub

Laman web rasmi - Spurine

Firmware - Muat turun (untuk plat yang berbeza)

JavaScript? Pengawal mikro?

Sekiranya anda telah bermula di dunia ini, anda mungkin tertanya-tanya apakah syarat-syarat itu atau apa yang dapat mereka sumbangkan untuk projek anda. Sekiranya anda sering membaca kami, anda pasti akan mengetahui apa itu mikrokontroler, dan pastinya anda juga tahu JavaScript atau JS.

Un mikrokontrolerJuga disebut MCU (Micro Controller Unit), ia adalah cip yang dapat diprogramkan yang mampu melaksanakan pesanan tertentu dari memori. Ini mungkin sesuai dengan definisi CPU juga, tetapi dalam kasus MCU, mereka biasanya kurang maju dan kuat, menargetkan tugas tertentu tertentu, seperti perangkat tertanam.

Di samping itu, untuk perbezaan dari CPU, mikrokontroler adalah litar bersepadu yang merangkumi CPU itu sendiri, serta blok fungsi lain seperti memori dan sistem I / O. Maksud saya, pada dasarnya komputer lengkap pada satu cip ...

Oleh itu, anda akan mempunyai peranti yang murah dan sederhana anda boleh atur cara supaya input dan output mereka bertindak seperti yang anda mahukan dan dengan itu menghasilkan tindakan. Anda boleh membuatnya menerima maklumat dari sensor luaran atau penggerak, dan berdasarkan itu menghantar isyarat tertentu melalui outputnya kepada orang lain Komponen elektronik konekados.

Mengenai JavaScript, itu adalah bahasa yang ditafsirkan. Dengan kata lain, tidak seperti yang dikompilasi yang setelah penyusunan menghasilkan binari yang dapat dijalankan oleh CPU, dalam hal skrip yang ditafsirkan, diperlukan perisian perantara yang disebut jurubahasa, yang akan menafsirkan perintah kod untuk "memberitahu" CPU apa itu. apa yang harus dilakukan.

JS Ini menjadi sangat penting hari ini kerana banyak aplikasi yang dimilikinya, terutama dalam aplikasi web. Sebenarnya, ia pada mulanya dikembangkan oleh Netscape Brendan Eich (kemudian Mocha, kemudian dinamakan semula LiveScript, dan akhirnya JavaScript).

Populariti itu menyebabkan sebilangan besar pengaturcara dan pengguna yang berminat dalam JavaScript, dan projek seperti Espurino dapat mendekatkan semuanya dengan pengaturcaraan mikrokontroler dengannya.

By the way, untuk mulakan dengan Espurino IDE, anda tidak perlu memasang apa-apa dalam sistem operasi anda, itu adalah persekitaran berasaskan web yang boleh anda gunakan dari sini dalam penyemak imbas web kegemaran anda.

Walaupun pelbagai penyemak imbas web dapat digunakan, untuk mem-flash firmware papan ini disarankan untuk menggunakan Chrome dan plugin yang disebut Espurino Web IDE yang disarankan dari laman web rasmi dan yang boleh anda dapatkan untuk Chrome anda di pautan ini.

Bagaimana cara belajar JavaScript?

Sekiranya anda masih tidak tahu bagaimana memprogram dalam JavaScript, anda harus tahu bahawa, seperti dalam bahasa lain, ada buku untuk pembelajaran, kursus, tutorial video, dan sejumlah besar sumber untuk belajar secara percuma. Tetapi ada sumber lain yang mungkin kurang dibincangkan dan yang sangat menarik untuk menjadikan gamification sebagai prosedur pembelajaran JS.

Saya merujuk kepada permainan video yang membantu anda belajar memprogram dengan bahasa pengaturcaraan tertentu, termasuk JS. Dengan permainan ini, alih-alih menggunakan papan kekunci atau tetikus untuk mengarahkan watak atau berinteraksi dengan persekitaran maya, apa yang akan anda miliki adalah jurubahasa bahasa ini di satu sisi skrin dan di mana anda akan mula memasukkan kod (bermula dengan paling sederhana malah yang paling maju).

Dengan cara ini, anda akan mengawal permainan menggunakan bahasa pengaturcaraan, jadi semasa permainan anda akan pergi belajar hampir tanpa menyedarinya dan semasa anda maju dalam misi, pengetahuan anda akan bertambah.

Sekiranya anda berminat dengan cara belajar ini untuk memulakan dengan Espurino, di sini saya tinggalkan anda beberapa sumber untuk dipelajari JavaScript menggunakan permainan:

Plat Espurino rasmi

Plat spurine

Selepas perkembangan pertama pinggan itu Espurino yang asli datang lebih banyak projek yang tersedia untuk digunakan bersama IDE dan JS. Sekiranya anda ingin mengetahui lebih lanjut mengenai mereka, berikut adalah pengenalan kepada masing-masing:

  • Espurino (asal): ia adalah plat asal, yang pertama dirancang di bawah projek ini. Ciri-ciri mereka adalah:
    • STM32F103RCT6 32-bit 72Mhz ARM Cortex-M3 MCU
    • 256Kb memori kilat, 28Kb RAM
    • microUSB, penyambung SD, dan penyambung bateri luaran JST PHR-2
    • LED merah, biru dan hijau
    • Pad yang membolehkan penyambungan modul Bluetooth HC-05
    • 44 GPIO dengan 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C dan 2 DAC.
    • Dimensi: 54x41mm
  • Puncak Spurino: adalah papan kecil dengan mikrokontroler untuk mula menjalankan projek JavaScript anda dan mengawal perkara dalam beberapa saat. Ia diprogramkan melalui antara muka USB untuk memuatkan skrip yang anda tulis di Espurino IDE. Selain itu, ia mempunyai harga yang ekonomik dan anda boleh menemuinya dengan pin dan tanpa pin yang dipateri di kepalanya. Maklumat lanjut:
      • 22 GPIO (9 input analog, 21 PWM, 2 siri, 3 SPI dan 3 I2C).
      • Penyambung USB-A di atas kapal.
      • 2 LED dan 1 butang pada PCB.
      • STM32F401CDU6 32-bit 84Mhz ARM Cortex-M4 MCU
      • Memori: 384 Kb denyar dan 96Kb RAM
      • Dimensi 33x15mm
  • WiFi Spurino: Ini adalah papan praktikal berkembar dengan yang sebelumnya, hanya beberapa penambahbaikan yang telah ditambahkan. Sebagai contoh, saiznya 30x23mm, berkembang untuk memberi ruang kepada cip WiFi ESP8266. Sebagai tambahan, USB telah diubah menjadi microUSB, jumlah GPIO telah dikurangkan menjadi 21 (8 analog, 20 PWM, 1 siri, 3 SPI dan 3 I2C). Sebaliknya, mikrokontroler juga telah ditingkatkan, sekarang ia adalah STM32F411CEU6 32-bit 100Mhz ARM Cortex-M4 dengan memori kilat 512kb dan RAM 128 kb.
  • Spurino Puck.js: Pada dasarnya adalah butang pintar Bluetooth yang boleh anda atur berkat mikrokontroler dalamannya dan jurubahasa (pra-pemasangan) dengan JS. Selain itu, ia mempunyai 52832Mhz ARM Cortex-M4 nRF64 SoC dengan 64kB RAM dan 512Kb flash, GPIO, tag NFC, magnetometer MAG3110, pemancar IR, termometer terbina dalam, serta sensor tahap cahaya dan bateri.
  • Spurino Pixl.js: Ini adalah peranti yang serupa dengan yang sebelumnya, tetapi bukannya butang, ia adalah skrin pintar Bluetooth LE yang dapat diprogram. Skrinnya mempunyai dimensi 128 × 64 monokrom, sementara ciri-ciri selebihnya serupa dengan Puck.js.
  • MDBT42Q: ia adalah modul yang sama dengan Pixl.js dan Puck.js, tetapi dengan antena seramik. Ciri-ciri teknikal selebihnya bertepatan dengan dua yang sebelumnya, tetapi tanpa skrin atau butang dalam kes ini ...
  • bangle.js: ia adalah produk terbaru. Ia adalah jam tangan yang boleh dipakai, jam tangan pintar atau jam tangan pintar. Anda akan dapat memasang aplikasi dan mengembangkan fungsi baru menggunakan JavaScript atau bahasa pengaturcaraan grafik (Blockly). Anda hanya memerlukan penyemak imbas web untuk dapat menulis kod anda dan memuat naiknya ke jam tangan. Selain itu, kalis air, mempunyai Bluetooth, GPS, akselerometer, magnetometer (untuk mengukur kekuatan dan arah isyarat magnet), dll

Jika anda perlukan beli sebilangan dari pinggan Espurino ini anda boleh mencarinya di kedai laman web rasmi Dari projek ini. Anda juga boleh mencarinya melalui siri pengedar pegawai yang ditugaskan untuk projek itu, seperti beberapa barangan runcit terkenal seperti Adafruit, dll.


Kandungan artikel mematuhi prinsip kami etika editorial. Untuk melaporkan ralat, klik di sini.

Menjadi yang pertama untuk komen

Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.