Rilis Snek 1.6, bahasa pemrograman mirip Python untuk sistem tertanam

Keith Packard, pengembang aktif Debian, pemimpin proyek X.Org dan pencipta banyak ekstensi X termasuk XRender, XComposite dan XRandR, telah menerbitkan rilis baru bahasa pemrograman Snek 1.6, yang diposisikan sebagai versi sederhana dari bahasa Python, diadaptasi untuk digunakan pada sistem tertanam.sistem yang tidak memiliki sumber daya yang cukup untuk menggunakan MicroPython dan CircuitPython. Snek tidak mengklaim dukungan penuh untuk bahasa Python, tetapi dapat digunakan pada chip dengan RAM sedikitnya 2KB, memori Flash 32KB, dan EEPROM 1KB. Kode proyek didistribusikan di bawah lisensi GPLv3. Build disiapkan untuk Linux, Windows, dan macOS.

Snek menggunakan semantik dan sintaksis Python, tetapi hanya mendukung sebagian fitur terbatas. Salah satu tujuan desain adalah untuk menjaga kompatibilitas ke belakangβ€”program Snek dapat dijalankan menggunakan implementasi penuh Python 3. Snek telah di-porting ke berbagai perangkat tertanam, termasuk Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 dan ΞΌduino, menyediakan akses ke GPIO dan berbagai periferal.

Pada saat yang sama, proyek ini juga mengembangkan mikrokontroler terbuka Snekboard (ARM Cortex M0 dengan Flash 256KB dan RAM 32KB), dirancang untuk digunakan dengan Snek atau CircuitPython, dan bertujuan untuk mengajar dan membuat robot menggunakan komponen LEGO. Dana untuk pembuatan Snekboard dikumpulkan melalui crowdfunding.

Untuk mengembangkan aplikasi di Snek, Anda dapat menggunakan editor kode Mu (tambalan untuk dukungan) atau lingkungan pengembangan terintegrasi konsol Anda sendiri Snekde, yang ditulis menggunakan perpustakaan Curses dan menyediakan antarmuka untuk mengedit kode dan berinteraksi dengan perangkat melalui port USB (Anda dapat langsung menyimpan program di perangkat eeprom dan mendownload kode dari perangkat).

Dalam rilis baru:

  • Menambahkan dukungan untuk sinkronisasi eksplisit berbasis ENQ/ACK, memungkinkan aplikasi mengirim data dalam jumlah besar tanpa perlu mendukung kontrol aliran di sisi sistem operasi, termasuk saat menghubungkan sejumlah besar perangkat ke USB atau port serial yang tidak menyediakan Alur kontrol.
  • Port untuk papan Lego EV3 telah ditingkatkan secara signifikan, membawa dukungan ke level perangkat lain.
  • Menambahkan port untuk papan Narrow 1284 berdasarkan SoC ATmega1284.
  • Menambahkan port untuk Kit Pemula Seeed Grove berdasarkan ATmega328p.
  • Menambahkan port untuk papan Seeeduino XIAO berbasis SAMD21 yang terhubung melalui USB-C.
  • Menambahkan port untuk Arduino Nano Setiap board berbasis ATmega4809, dilengkapi dengan RAM 6 KB.

Tambah komentar