PikaScript 1.8, як варианти забони Python барои микроконтроллерҳо дастрас аст

Лоиҳаи PikaScript 1.8 бароварда шуд, ки муҳаррики паймонеро барои навиштани замимаҳо барои микроконтроллерҳо дар Python таҳия мекунад. PikaScript бо вобастагии беруна алоқаманд нест ва метавонад дар микроконтроллерҳо бо 4 KB RAM ва 32 KB Flash, ба монанди STM32G030C8 ва STM32F103C8 кор кунад. Барои муқоиса, MicroPython 16 КБ хотираи оперативӣ ва 256 КБ Flash талаб мекунад, дар ҳоле ки Snek 2 КБ RAM ва 32 КБ Flash талаб мекунад. Рамзи лоиҳа дар C навишта шудааст ва таҳти иҷозатномаи MIT паҳн карда мешавад.

PikaScript зермаҷмӯаи забони Python 3-ро таъмин мекунад, ки унсурҳои синтаксисро, аз қабили изҳороти шоха ва даврӣ (агар, while, for, else, elif, break, continue), операторҳои асосӣ (+ - * / < == >), модулҳо, инкапсуляция, мерос, полиморфизм, синфҳо ва усулҳо. Скриптҳои Python дар дастгоҳҳо пас аз таҳияи пешакӣ иҷро карда мешаванд - PikaScript аввал рамзи Python-ро ба байткоди дохилии Pika Asm табдил медиҳад, ки дар дастгоҳи ниҳоӣ дар мошини махсуси виртуалии Pika Runtime иҷро карда мешавад. Он бевосита кор дар болои сахтафзор ё дар муҳити RT-Thread, VSF (Versaloon Software Framework) ва Linux-ро дастгирӣ мекунад.

PikaScript 1.8, як варианти забони Python барои микроконтроллерҳо дастрас аст

Дар алоҳидагӣ, осонии ҳамгироии скриптҳои PikaScript бо код дар забони Си қайд карда мешавад - функсияҳое, ки дар забони Си навишта шудаанд, метавонанд ба код пайваст карда шаванд, ки ба татбиқи PikaScript имкон медиҳад, ки коркардҳои лоиҳаҳои кӯҳна бо забони Си навишта шаванд. Муҳитҳои мавҷудаи рушд ба монанди Keil, IAR, RT-Thread Studio ва Segger Embedded Studio метавонанд барои таҳияи модулҳои C истифода шаванд. Пайвандҳо дар марҳилаи компилятсионӣ ба таври худкор тавлид мешаванд; муайян кардани API дар файл бо рамзи Python кифоя аст ва ҳатмии функсияҳои C ба модулҳои Python ҳангоми ба кор андохтани Pika Pre-compiler иҷро карда мешавад.

PikaScript 1.8, як варианти забони Python барои микроконтроллерҳо дастрас аст

PikaScript даъво дорад, ки 24 микроконтроллерҳоро дастгирӣ мекунад, аз ҷумла моделҳои гуногуни stm32g*, stm32f*, stm32h*, WCH ch582, ch32*, WinnerMicro w80*, Geehy apm32*, Bouffalo Lab bl-706, Raspberry PicoTC32 ва Inf3TC264. Барои зуд оғоз кардани рушд бидуни таҷҳизот, симулятор таъмин карда мешавад ё тахтаи таҳияи Pika-Pi-Zero дар асоси микроконтроллери STM32G030C8T6 бо 64 КБ Flash ва 8 КБ RAM пешниҳод карда мешавад, ки интерфейсҳои маъмулии перифериро дастгирӣ мекунад (GPIO, TIME, IIC, RGB, KEY). , LCD, RGB). Таҳиягарон инчунин як генератори лоиҳаи онлайн ва мудири бастаи PikaPackage омода кардаанд.

Версияи нав идоракунии хотираро дар асоси ҳисобкунии истинодҳо амалӣ мекунад ва дастгирии конструкторҳои виртуалиро илова мекунад (усули завод). Бо истифода аз асбобҳои valgrind мушкилоти хотира ташхис карда шуд. Дастгирии иловашуда барои тартиб додани файлҳои компютерии Python ба байткод ва бастабандии онҳо дар нармафзор. Имконияти истифодаи якчанд файлҳои Python дар нармафзор бе зарурати истифодаи системаи файлӣ амалӣ карда шудааст.

Манбаъ: opennet.ru

Илова Эзоҳ