Mikrokontrollerlar uchun Python tilining varianti PikaScript 1.8 mavjud

Pythonda mikrokontrollerlar uchun ilovalar yozish uchun ixcham dvigatelni ishlab chiqadigan PikaScript 1.8 loyihasi chiqarildi. PikaScript tashqi bog'liqliklarga bog'liq emas va STM4G32C32 va STM030F8C32 kabi 103 KB RAM va 8 KB Flashga ega mikrokontrollerlarda ishlashi mumkin. Taqqoslash uchun, MicroPython uchun 16 KB operativ xotira va 256 KB Flash, Snek uchun esa 2 KB operativ xotira va 32 KB Flash talab qilinadi. Loyiha kodi C tilida yozilgan va MIT litsenziyasi ostida tarqatiladi.

PikaScript Python 3 tilining kichik to‘plamini taqdim etadi, u shox va sikl iboralari (if, while, for, else, elif, break, continue), asosiy operatorlar (+ - * / < == >), modullar kabi sintaksis elementlarini qo‘llab-quvvatlaydi. inkapsulyatsiya, irsiyat, polimorfizm, sinflar va usullar. Python skriptlari dastlabki kompilyatsiyadan so'ng qurilmalarda bajariladi - PikaScript birinchi navbatda Python kodini Pika Runtime maxsus virtual mashinasida oxirgi qurilmada bajariladigan ichki Pika Asm baytekodiga aylantiradi. U to'g'ridan-to'g'ri apparat ustida yoki RT-Thread, VSF (Versaloon Software Framework) va Linux muhitlarida ishlashni qo'llab-quvvatlaydi.

Mikrokontrollerlar uchun Python tilining varianti PikaScript 1.8 mavjud

Alohida-alohida, PikaScript skriptlarini S tilidagi kod bilan integratsiya qilish qulayligi qayd etilgan - C tilida yozilgan funksiyalar kod bilan bog'lanishi mumkin, bu PikaScript-ni amalga oshirishda C tilida yozilgan eski loyihalar ishlanmalaridan foydalanish imkonini beradi. Keil, IAR, RT-Thread Studio va Segger Embedded Studio kabi mavjud ishlab chiqish muhitlari C modullarini ishlab chiqish uchun ishlatilishi mumkin. Bog'lanishlar kompilyatsiya bosqichida avtomatik ravishda yaratiladi; Python kodi bilan faylda APIni aniqlash kifoya va C funktsiyalarini Python modullariga ulash Pika Pre-kompilyatori ishga tushirilganda amalga oshiriladi.

Mikrokontrollerlar uchun Python tilining varianti PikaScript 1.8 mavjud

PikaScript stm24g*, stm32f*, stm32h*, WCH ch32, ch582*, WinnerMicro w32*, Geehy apm80*, Bouffalo Lab bl-32, Raspberry Pico bl-706, Raspberry Pico va Inf32TC3D, ESP264C32, stm030g*, stm8f*, stm6h*, WCH ch64, ch8*, turli modellarni o‘z ichiga olgan XNUMX ta mikrokontrollerni qo‘llab-quvvatlashini da’vo qiladi. Uskunalarsiz ishlab chiqishni tezda boshlash uchun simulyator taqdim etiladi yoki odatdagi periferik interfeyslarni (GPIO, TIME, IIC, RGB, KEY) qo'llab-quvvatlaydigan XNUMX KB Flash va XNUMX KB RAMga ega STMXNUMXGXNUMXCXNUMXTXNUMX mikrokontrolleriga asoslangan Pika-Pi-Zero ishlab chiqish platasi taklif etiladi. , LCD, RGB). Ishlab chiquvchilar, shuningdek, onlayn loyiha generatori va PikaPackage paket menejerini tayyorladilar.

Yangi versiya ma'lumotnomalarni hisoblash asosida xotira boshqaruvini amalga oshiradi va virtual konstruktorlarni qo'llab-quvvatlaydi (zavod usuli). Valgrind asboblar to'plamidan foydalangan holda tashxis qo'yilgan xotira muammolari. Python kompyuter fayllarini bayt-kodga kompilyatsiya qilish va ularni proshivkaga qadoqlash uchun qo'shimcha yordam. Bir nechta Python fayllarini proshivkada fayl tizimidan foydalanmasdan foydalanish imkoniyati amalga oshirildi.

Manba: opennet.ru

a Izoh qo'shish