Practical UML Statecharts in C/C++, Second Edition: Event-Driven Programming for Embedded Systems (PSiCC2) is the most popular book about UML statecharts and event-driven programming for embedded systems. This ultimate resource describes all the related concepts and provides a very detailed design study of the QP™ frameworks.
companion page to PSiCC2
QP datasheet
(PDF 1.4MB)
Application Notes by Category
- Standards
- Programming Techniques
- Example Applications
- Design Patterns
- QP™ Ports
- Middleware
- 3rd-Party Products
Standards
| Title |
|---|
| Quantum Leaps Coding Standard (0.4MB PDF) |
| QP Directory Structure (0.2MB PDF) |
| QEP/C MISRA™ Compliance Matrix (0.6MB PDF) |
| QEP/C PC-Lint™ Compliance (0.2MB PDF) |
| QEP/C++ MISRA™ Compliance Matrix (0.6MB PDF) |
| QEP/C++ PC-Lint™ Compliance (0.2MB PDF) |
Programming Techniques
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| Simple Encapsulation and Inheritance in C (0.1MB PDF) | |||
| "C+"—Object Oriented Programming in C (0.3MB PDF) | (0.4MB) | ||
| Inheriting State Machines with QP 4.x (0.7MB PDF) | (0.7MB) | (1.1MB) |
Example Applications
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| Dining Philosophers Problem (DPP) (0.6MB PDF) | Code is provided in various QP™ Development Kits | ||
| PEdestrian LIght CONtrolled (PELICAN) crossing (1.1MB PDF) | Code is provided in various QP™ Development Kits | ||
| Capstone Dive Computer (1.0MB PDF) | (2.9MB) | ||
Design Patterns
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| Ultimate Hook (0.4MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
| Reminder (0.4MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
| Deferred Event (0.5MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
| Orthogonal Component (0.5MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
| Transition to History (0.5MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
| State-Local Storage (0.8MB PDF) | Example code is provided in the QP/C/C++/nano distros | ||
QP™ Ports
NOTE: The QP™ ports are documented in the QP™ Development Kits (QDKs), which all contain extensive Programmer's Manuals available for download together with the provided source code.
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| QP/C/C++ and ARM Cortex-M0/M3 with IAR (0.7MB PDF) | QP/C distro | QP/C++ distro | |
| QP-nano and ARM Cortex with IAR (0.7MB PDF) | QP-nono distro | ||
| QP/C/C++ and ARM7/ARM9 Processors (0.7MB PDF) | QDKs-ARM | QDKs-ARM | |
| QP-nano and ARM7/ARM9 Processors (0.7MB PDF) | QDKs-ARM | ||
| QP/C/C++ and Linux (0.5MB PDF) | QP/C distro | QP/C++ distro |
Middleware
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| QP and lwIP TCP/IP Stack (1.6MB PDF) | (6.2MB) | (6.3MB) | |
| QP and emWin Embedded GUI Library (0.5MB PDF) | (3.5MB) | (5.2MB) |
3rd-Party Products
| Title | Code for QP/C |
Code for QP/C++ |
Code for QP-nano |
|---|---|---|---|
| uC/OS-II and Turbo C++ 1.01 (0.3MB PDF) | (0.1MB) |