Inclusión al proyecto Aixt de una placa de la marca Sipeed de la serie M0sense para la transcompilación de su código fuente desde un lenguaje basado en V a lenguaje C
Fecha
Autores
Autor corporativo
Título de la revista
ISSN de la revista
Título del volumen
Editor
Compartir
Director
Altmetric
Resumen
The Aixt project is a programming framework for microcontrollers that uses a modern language syntax and focuses on low-resource devices. It consists of 3 main components: the Aixt programming language based on the V language syntax [1], the Aixt to C transcompiler, which translates the Aixt language source code into C language for the native C compiler specific to each microcontroller, and the Aixt API (Application Programming Interface), which facilitates programming by standardizing the configuration and data input and output functions for all supported boards [2]. The Aixt language can be considered as a subset of the V language, implementing much of its syntax, but leaving out programming features that would be expensive to implement on microcontrollers in terms of memory space.
The idea of the Aixt project was born, in 2022 with the claims of the Sokae project [3] to establish a middle ground between the programming structure and language of the Arduino (C-based) [4] and Microphyton (Python-based) [5] projects, “the programming structure is composed of three main components: a language based on Rust syntax, a transcopiler that converts source code written in Rust to C language, and an API.” [6]. Unlike the Sokae project which uses the Rust programming language as a base, the Aixt project uses the V language which has a simpler syntax and is more in line with the minimalist approach of the project.
This project will address an important need in the technology market, because there is currently a great demand for solutions that allow the migration of applications from one language to another efficiently and effectively.
The project will consist in giving support to the series of a M0sense board to be integrated to the Aixt project, this will be done by implementing an API in C including the basic functions of a board supported by the Aixt project and a configuration file that allows the transcompiler to make an effective translation between the two languages. The project will allow source code in Aixt language to be correctly compiled to the PIC16F series automatically, without having to make manual changes that can be tedious and costly in terms of time and resources. Aixt is optimized to run efficiently on resource-constrained devices such as an M0sense series board, making it suitable for applications that require a resource-efficient solution.
This project represents an opportunity to apply knowledge and skills acquired during the training in Electrical Engineering and will contribute with innovative solutions to the technological market. This project is planned to be developed in a maximum of 4 months and for this purpose a total of 384 working hours have been allocated for this internship. This time will be distributed efficiently to achieve the proposed objectives within the established time frame.