QP State Machine Frameworks
Screenshots
Description
Small RTOS-like frameworks for building embedded software as systems of concurrent, event-driven UML state machines in C or C++. Ported to many MCUs (ARM Cortex-M3/M0, MSP430...) and OSs (Linux, Win32...). Supported by free QM graphical UML tool.
QP State Machine Frameworks Web SiteFeatures
- QP frameworks are now supported by the free QM graphical UML tool
User Ratings
User Reviews
-
Very easy to use qpc
-
QP and QM are wonderful tools for creating modern model driven reactive designs.
-
good job
-
Miro does an excellent job of supporting this product. In the last couple of weeks I have submitted two requests for clarification and he has gotten back in less than a day. I encourage anyone who want to learn a new way of thinking and coding that results in better, much better, code right away consider this product.
-
The QP State Machine Framework should be in every embedded developer's toolkit. Virtually every embedded system is event-driven (even cyclical / periodic systems are event-driven - the event is a timer timeout!), and thus the QP can be used in a huge variety of systems, ranging from tiny low-power devices to very large distributed systems with thousands of states and objects. The QP supports FSMs and HSMs in C and C++. The active object computing model (active object = state machine + thread + message queue) is exploited to obtain ultra-efficient processing of events. Also the licensing model is very reasonable, especially when you consider what you get (including excellent & speedy support) -- a hierarchical event processor, a framework for event driven applications (memory / event pools, timers, garbage collection, zero copy event posting, broadcast & direct post, etc...) Also the QF can sit on top of any RTOS, a lean & fast preemptive kernel named QK, or even a simple non-preemtpive kernel. There's even a very small lightweight version called QP-nano that is tailored for memory & CPU-constrained systems. The best part: you spend your time focusing on identifying your system's states & events, and implementing your design in the QP, instead of writing the infrastructure ("reinventing the wheel"). In short: get the book, download the code, build the examples, and evaluate the QP for use in your system.