User`s manual
Copyright © Quantum Leaps, LLC. All Rights Reserved.
QDK™
Renesas RX with HEW
state-machine.com/rx
As shown in Figure 2, QP consists of a universal UM-compliant event processor (QEP), a portable real-
time framework (QF), a tiny run-to-completion kernel (QK) as well as simple cooperative kernel (Vanilla), 
and software tracing instrumentation (QS). Current versions of QP include: QP/C™ and QP/C++™, which 
require about 4KB of code and a few hundred bytes of RAM, and the ultra-lightweight QP-nano, which 
requires only 1-2KB of code and just several bytes of RAM. QP can manage up to 63 concurrently 
executing tasks structured as state machines (called active objects in UML).
Figure 2: QP Components and their relationship with the target
hardware, board support package (BSP), and the application
1.2 About QM™
QM™ (QP™ Modeler) is a free, cross-platform, graphical UML modeling 
tool for designing and implementing real-time embedded applications based 
on the QP™ state machine frameworks. QM™ is available for Windows, 
Linux, and Mac OS X.
QM™ provides intuitive diagramming environment for creating good looking 
hierarchical state machine diagrams and hierarchical outline of your entire 
application. QM™ eliminates coding errors by automatic generation of 
compact C or C++ code that is 100% traceable from your design. Please 
visit state-machine.com/qm for more information about QM™.
1.3 About this QDK-RX
This QDK provides working examples of code running under both the cooperative Vanilla kernel and the 
preemptive QK kernel. The example code is based on the Dining Philosopher Problem (DPP) sample 
application described in Chapter 7 of [PSiCC2] as well as in the Application Note “Dining Philosopher 
Problem” [QL AN-DPP 08] (included in the example code distribution).
The entire source code included with this QDK can be edited manually in a traditional code editor. 
However, significant parts of the code have been generated automatically by the QM™ modeling tool 
from the 
dppp.qm
 model file included in the QDK. The preferred way of developing QP™ applications is 
to make all the changes in the model and generate the code automatically.
3 of 32










