Manussüsteemidele mõeldud Pythoni-sarnase programmeerimiskeele Snek 1.6 väljalase

Keith Packard, aktiivne Debiani arendaja, X.Org projekti juht ja paljude X laienduste, sealhulgas XRender, XComposite ja XRandR looja, on avaldanud Snek 1.6 programmeerimiskeele uue versiooni, mis on Pythoni keele lihtsustatud versioon. kohandatud kasutamiseks manustatud süsteemides süsteemid, millel pole MicroPythoni ja CircuitPythoni kasutamiseks piisavalt ressursse. Snek ei pretendeeri Pythoni keele täielikule toele, kuid seda saab kasutada kiipides, millel on vaid 2 KB muutmälu, 32 KB välkmälu ja 1 KB EEPROM. Projekti koodi levitatakse GPLv3 litsentsi all. Järeldused on ette valmistatud Linuxi, Windowsi ja macOS-i jaoks.

Snek kasutab Pythoni semantikat ja süntaksit, kuid toetab ainult piiratud funktsioonide alamhulka. Üks disainieesmärke on säilitada tagasiühilduvus – Sneki programme saab käivitada Python 3 täisrakenduste abil. Snek on porditud paljudele manustatud seadmetele, sealhulgas Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 ja µduino pakuvad juurdepääsu GPIO-le ja erinevatele välisseadmetele.

Samal ajal arendatakse projekti raames ka oma avatud mikrokontrollerit Snekboard (ARM Cortex M0 koos 256KB Flashi ja 32KB RAM-iga), mis on mõeldud kasutamiseks koos Sneki või CircuitPythoniga ning mille eesmärk on LEGO osade abil robotite õpetamine ja loomine. Raha Snekboardi loomiseks koguti ühisrahastuse kaudu.

Rakenduste arendamiseks Snekis saate kasutada Mu koodiredaktorit (toe jaoks paigad) või oma konsooli integreeritud arenduskeskkonda Snekde, mis on kirjutatud Curses teegi abil ja pakub liidest koodi redigeerimiseks ja seadmega USB-pordi kaudu suhtlemiseks. (saad kohe programmid eeprom seadmesse salvestada ja seadmest koodi alla laadida).

Uues väljaandes:

  • Lisatud on selgesõnalise ENQ/ACK-põhise sünkroonimise tugi, mis võimaldab rakendustel saata suuri andmemahtusid, ilma et oleks vaja toetada voojuhtimist operatsioonisüsteemi poolel, sealhulgas siis, kui USB- või jadaporti ühendatakse suur hulk seadmeid, mis seda ei paku. voolu juhtimine.
  • Lego EV3 plaadi porti on oluliselt täiustatud, tuues toe teiste seadmete tasemele.
  • Lisatud kitsas 1284 plaadi port, mis põhineb ATmega1284 SoC-l.
  • Lisatud port Seeed Grove Beginner Kitile, mis põhineb ATmega328p-l.
  • Lisatud port SAMD21-põhisele Seeeduino XIAO plaadile, mis on ühendatud USB-C kaudu.
  • Lisatud port Arduino Nano jaoks Iga ATmega4809 baasil põhinev plaat, mis on varustatud 6 KB RAM-iga.

Lisa kommentaar