PikaScript 1.8 พร้อมใช้งานแล้ว ซึ่งเป็นรูปแบบหนึ่งของภาษา Python สำหรับไมโครคอนโทรลเลอร์

โปรเจ็กต์ PikaScript 1.8 เปิดตัวแล้ว โดยพัฒนาเอ็นจิ้นขนาดกะทัดรัดสำหรับการเขียนแอปพลิเคชันสำหรับไมโครคอนโทรลเลอร์ใน Python PikaScript ไม่เชื่อมโยงกับการพึ่งพาภายนอกและสามารถทำงานบนไมโครคอนโทรลเลอร์ที่มี RAM 4 KB และ Flash 32 KB เช่น STM32G030C8 และ STM32F103C8 ในการเปรียบเทียบ MicroPython ต้องการ RAM 16 KB และ Flash 256 KB ในขณะที่ Snek ต้องการ RAM 2 KB และ Flash 32 KB รหัสโครงการเขียนด้วยภาษา C และเผยแพร่ภายใต้ใบอนุญาต MIT

PikaScript จัดเตรียมชุดย่อยของภาษา Python 3 ที่รองรับองค์ประกอบไวยากรณ์ เช่น คำสั่งสาขาและคำสั่งวนซ้ำ (ถ้า ในขณะที่ สำหรับ อย่างอื่น elif แบ่ง ดำเนินการต่อ) ตัวดำเนินการพื้นฐาน (+ - * / < == >) โมดูล การห่อหุ้ม การสืบทอด ความหลากหลาย คลาสและวิธีการ สคริปต์ Python จะถูกดำเนินการบนอุปกรณ์หลังจากการคอมไพล์เบื้องต้น - PikaScript จะแปลงโค้ด Python เป็นโค้ดไบต์ Pika Asm ภายในก่อน ซึ่งจะดำเนินการบนอุปกรณ์ปลายทางในเครื่องเสมือน Pika Runtime พิเศษ รองรับการทำงานโดยตรงบนฮาร์ดแวร์หรือในสภาพแวดล้อม RT-Thread, VSF (Versaloon Software Framework) และ Linux

PikaScript 1.8 พร้อมใช้งานแล้ว ซึ่งเป็นรูปแบบหนึ่งของภาษา Python สำหรับไมโครคอนโทรลเลอร์

แยกกันความง่ายในการรวมสคริปต์ PikaScript กับโค้ดในภาษา C - ฟังก์ชั่นที่เขียนด้วยภาษา C สามารถเชื่อมโยงกับโค้ดได้ซึ่งช่วยให้การนำ PikaScript ไปใช้ในการพัฒนาโครงการเก่าที่เขียนด้วยภาษา C สภาพแวดล้อมการพัฒนาที่มีอยู่ เช่น 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 Pico, ESP32C3 และ Infineon TC264D เพื่อเริ่มต้นการพัฒนาอย่างรวดเร็วโดยไม่ต้องใช้อุปกรณ์ มีการจัดเตรียมเครื่องจำลองหรือบอร์ดพัฒนา Pika-Pi-Zero ที่ใช้ไมโครคอนโทรลเลอร์ STM32G030C8T6 พร้อมแฟลช 64 KB และ RAM 8 KB ซึ่งรองรับอินเทอร์เฟซต่อพ่วงทั่วไป (GPIO, TIME, IIC, RGB, KEY , จอแอลซีดี, RGB) นักพัฒนายังได้เตรียมตัวสร้างโปรเจ็กต์ออนไลน์และตัวจัดการแพ็คเกจ PikaPackage อีกด้วย

เวอร์ชันใหม่ใช้การจัดการหน่วยความจำตามการนับอ้างอิง และเพิ่มการรองรับสำหรับตัวสร้างเสมือน (วิธีการจากโรงงาน) วินิจฉัยปัญหาหน่วยความจำโดยใช้ชุดเครื่องมือ valgrind เพิ่มการรองรับการรวบรวมไฟล์ Python pc เป็น bytecode และบรรจุลงในเฟิร์มแวร์ มีการใช้ความสามารถในการใช้ไฟล์ Python หลายไฟล์ในเฟิร์มแวร์โดยไม่จำเป็นต้องใช้ระบบไฟล์

ที่มา: opennet.ru

เพิ่มความคิดเห็น