PikaScript 1.8 در دسترس است، نوعی از زبان پایتون برای میکروکنترلرها

پروژه PikaScript 1.8 منتشر شده است که یک موتور فشرده برای نوشتن برنامه های کاربردی برای میکروکنترلرها در پایتون توسعه می دهد. PikaScript به وابستگی های خارجی وابسته نیست و می تواند روی میکروکنترلرهایی با رم 4 کیلوبایت و فلش 32 کیلوبایتی مانند STM32G030C8 و STM32F103C8 اجرا شود. در مقایسه، MicroPython به 16 کیلوبایت رم و 256 کیلوبایت فلش نیاز دارد، در حالی که Snek به 2 کیلوبایت رم و 32 کیلوبایت فلش نیاز دارد. کد پروژه به زبان C نوشته شده و تحت مجوز MIT توزیع می شود.

PikaScript زیرمجموعه ای از زبان Python 3 را ارائه می دهد که از عناصر نحوی مانند عبارات شاخه و حلقه (if, while, for, else, elif, break, continue)، عملگرهای اصلی (+ - * / < == >)، ماژول ها، کپسوله سازی، وراثت، پلی مورفیسم، کلاس ها و روش ها. اسکریپت‌های پایتون پس از کامپایل اولیه روی دستگاه‌ها اجرا می‌شوند - PikaScript ابتدا کد پایتون را به بایت کد داخلی Pika Asm تبدیل می‌کند که در دستگاه پایانی در یک ماشین مجازی Pika Runtime ویژه اجرا می‌شود. از کار مستقیم روی سخت افزار یا در محیط های RT-Thread، VSF (Versaloon Software Framework) و لینوکس پشتیبانی می کند.

PikaScript 1.8 در دسترس است، نوعی از زبان پایتون برای میکروکنترلرها

به طور جداگانه، سهولت ادغام اسکریپت های PikaScript با کد به زبان C ذکر شده است - توابع نوشته شده به زبان C را می توان به کد مرتبط کرد، که به پیاده سازی PikaScript اجازه می دهد تا از پیشرفت های پروژه های قدیمی نوشته شده به زبان C استفاده کند. از محیط های توسعه موجود مانند Keil، IAR، RT-Thread Studio و Segger Embedded Studio می توان برای توسعه ماژول های C استفاده کرد. پیوندها به طور خودکار در مرحله کامپایل تولید می شوند؛ کافی است API را در یک فایل با کد پایتون تعریف کنید و زمانی که پیش کامپایلر Pika راه اندازی شد، اتصال توابع C به ماژول های پایتون انجام می شود.

PikaScript 1.8 در دسترس است، نوعی از زبان پایتون برای میکروکنترلرها

PikaScript ادعا می کند از 24 میکروکنترلر پشتیبانی می کند، از جمله مدل های مختلف stm32g*، stm32f*، stm32h*، WCH ch582، ch32*، WinnerMicro w80*، Geehy apm32*، Bouffalo Lab bl-706، Raspberry Pico، و ESP32C. برای شروع سریع توسعه بدون تجهیزات، یک شبیه ساز ارائه شده است یا یک برد توسعه Pika-Pi-Zero مبتنی بر میکروکنترلر STM3G264C32T030 با 8 کیلوبایت فلش و 6 کیلوبایت رم ارائه می شود که از رابط های معمولی جانبی (GPIO، TIME، IIC، RGB، KEY) پشتیبانی می کند. , LCD, RGB) . توسعه دهندگان همچنین یک مولد پروژه آنلاین و مدیر بسته PikaPackage را آماده کرده اند.

نسخه جدید مدیریت حافظه را بر اساس شمارش مراجع پیاده سازی می کند و پشتیبانی از سازنده های مجازی (روش کارخانه) را اضافه می کند. تشخیص مشکلات حافظه با استفاده از جعبه ابزار valgrind. اضافه شدن پشتیبانی برای کامپایل کردن فایل‌های کامپیوتر پایتون در بایت کد و بسته‌بندی آن‌ها در میان‌افزار. قابلیت استفاده از چندین فایل پایتون در فریمور بدون نیاز به استفاده از فایل سیستم پیاده سازی شده است.

منبع: opennet.ru

اضافه کردن نظر