Выпуск Snek 1.6, Python-падобнай мовы праграмавання для ўбудавальных сістэм

Кіт Пакард (Keith Packard), актыўны распрацоўшчык Debian, лідэр праекта X.Org і стваральнік мноства X-пашырэнняў, уключаючы XRender, XComposite і XRandR, апублікаваў новы выпуск мовы праграмавання Snek 1.6, пазіцыянаванага як спрошчаны варыянт мовы ў Python, адаптаваны для сістэмах, на якіх нядосыць рэсурсаў для выкарыстання MicroPython і CircuitPython. Snek не прэтэндуе на паўнавартасную падтрымку мовы Python, але можа выкарыстоўвацца на чыпах, якія маюць усяго 2КБ АЗП, 32 КБ Flash-памяці і 1КБ EEPROM. Код праекту распаўсюджваецца пад ліцэнзіяй GPLv3. Зборкі падрыхтаваны для Linux, Windows і macOS.

У мове Snek выкарыстоўваецца семантыка і сінтаксіс Python, але падтрымліваецца толькі абмежаванае падмноства магчымасцяў. Адной з мэт, якая ўлічваецца пры распрацоўцы, з'яўляецца захаванне зваротнай сумяшчальнасці – праграмы на Snek могуць выконвацца з выкарыстаннем паўнавартасных рэалізацый Python 3. Snek партаваны для шырокага спектру ўбудаваных прылад, уключаючы поплаткі Arduino, Feather / Metro M0 Express, Lego EV3 і µduino, падае доступ да GPIO і розным перыферыйным прыладам.

Пры гэтым праект таксама развівае ўласны адкрыты мікракантролер Snekboard (ARM Cortex M0 з 256КБ Flash і 32КБ АЗП), разлічаны на выкарыстанне са Snek або CircuitPython, і нацэлены на навучанне і стварэнне робатаў з выкарыстаннем дэталяў LEGO. Сродкі для стварэння Snekboard сабраны падчас краўдфандынгу.

Для распрацоўкі прыкладанняў на Snek можа выкарыстоўвацца рэдактар ​​кода Mu (патчы для падтрымкі) або ўласнае кансольнае інтэграванае асяроддзе распрацоўкі Snekde, якое напісана з выкарыстаннем бібліятэкі Curses і дае інтэрфейс для рэдагавання кода і ўзаемадзеяння з прыладай праз USB-порт (можна адразу захоўваць праграмы ў eeprom прылады і загружаць код з прылады).

У новым выпуску:

  • Дададзена падтрымка відавочнай сінхранізацыі на базе ENQ/ACK, якая дазваляе прыкладанням адпраўляць вялікія аб'ёмы дадзеных без неабходнасці падтрымай кіравання струменем на боку аперацыйнай сістэмы, у тым ліку пры падлучэнні вялікай колькасці прылад да USB або паслядоўнаму порту, якія не падаюць кіравання струменем.
  • Значна палепшаны порт для платы Lego EV3, падтрымка якой даведзена да ўзроўню іншых прылад.
  • Дададзены порт для платы Narrow 1284 на базе SoC ATmega1284.
  • Дададзены порт для платы Seeed Grove Beginner Kit на базе ATmega328p.
  • Дададзены порт для платы Seeeduino XIAO на базе SAMD21, якая падключаецца праз USB-C.
  • Дададзены порт для платы Arduino Nano Every на базе ATmega4809, абсталяванай 6 КБ АЗП.

Дадаць каментар