Generic_MCU_Software_Infrastructure
FreeProvide necessary software infrastructure, service, macros to support some high level abstract concept or paradigm, such as OOPC, FSM, delegate (event-driven) and etc.
About Generic_MCU_Software_Infrastructure
Generic_MCU_Software_Infrastructure (GMSI) provides necessary software infrastructures, services, and macros for embedded microcontroller development. It supports high-level abstractions such as OOPC (Object-Oriented Programming in C), FSM (Finite State Machines), and delegate (event-driven) paradigms. Currently, GMSI offers services including epool (common pool infrastructure), block (block-based buffer), block_queue (queue of blocks), stream2block (stream interface for block devices), es_simple_frame (communication frame encoding/decoding), multiple_delay (delay monitoring), scheduler (non-preemptive FSM scheduler), CRC functions, Xmodem protocol, and a bootloader logic template.
Key Features
Pros & Cons
- Open source and free to use
- Modular design with reusable services
- Supports multiple high-level paradigms (OOPC, FSM, event-driven)
- Efficient stream handling with double-buffered approach minimizing atomicity impact on interrupts
- Includes practical examples (e.g., stream2block with USART)
- Provides a bootloader logic template for quick customization
- Requires knowledge of embedded C and MCU programming
- Not a complete RTOS; focuses on infrastructure services
- May need adaptation for specific MCU architectures and peripherals
- Documentation is limited to the README; minimal external resources
- Some services (e.g., bootloader) are templates requiring significant implementation effort