Sample QP/C configuration file. More...
Go to the source code of this file.
Macros | |
#define | QP_API_VERSION 0 |
QP Framework API backwards-compatibility version. | |
#define | Q_UNSAFE |
Disable the QP Functional Safety (FuSa) Subsystem. | |
#define | Q_SIGNAL_SIZE 2U |
Size of the QEvt signal [bytes]. | |
#define | QF_MAX_ACTIVE 32U |
Maximum # Active Objects in the system (1..64) | |
#define | QF_MAX_EPOOL 3U |
Maximum # event pools in the system (0..15) | |
#define | QF_MAX_TICK_RATE 1U |
Maximum # clock tick rates in the system (0..15) | |
#define | QEVT_PAR_INIT |
Event parameter initialization (RAII) for dynamic events. | |
#define | QACTIVE_CAN_STOP |
Enable the Active Object stop API. | |
#define | QF_EVENT_SIZ_SIZE 2U |
Maximum size of dynamic events managed by QP. | |
#define | QF_TIMEEVT_CTR_SIZE 4U |
Time event counter size. | |
#define | QF_EQUEUE_CTR_SIZE 1U |
Event queue counter size. | |
#define | QF_MPOOL_CTR_SIZE 2U |
Memory pool counter size (QF_MPOOL_CTR_SIZE) | |
#define | QF_MPOOL_SIZ_SIZE 2U |
Memory block size (QF_MPOOL_SIZ_SIZE) | |
#define | QS_TIME_SIZE 4U |
QS timestamp size (QS_TIME_SIZE) | |
#define | QS_CTR_SIZE 2U |
QS buffer counter size (QS_CTR_SIZE) | |
#define | QF_ON_CONTEXT_SW |
Enable context switch callback WITHOUT QS. | |
#define | QF_MEM_ISOLATE |
Enable MPU memory isolation. | |
#define | QK_USE_IRQ_NUM 31 |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M. | |
#define | QK_USE_IRQ_HANDLER Reserved31_IRQHandler |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M. | |
#define | QXK_USE_IRQ_NUM 31 |
Use IRQ handler for QXK return-from-preemption in ARM Cortex-M. | |
#define | QXK_USE_IRQ_HANDLER Reserved31_IRQHandler |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M. | |
Sample QP/C configuration file.
qp_config.h
file is optional and does not need to be provided (see the description of the QP_CONFIG macro below). In that case, all the listed configuration macros will be set at their default values.qp_config.h
configuration file takes effect only when the command-line macro QP_CONFIG is defined.Also, if the qp_config.h
file is provided and enabled (by defining the command-line macro QP_CONFIG), but any of the listed configuration macros is not defined in the provided file, the default value will be used.
qp_config.h
header files provided in the various QP/C examples are formatted to support the "Configuration Wizard" editor available in some IDEs (e.g., KEIL uVision). The screen shot below shows how to edit qp_config.h
in that mode.Definition in file qp_config.h.
#define QP_API_VERSION 0 |
QP Framework API backwards-compatibility version.
QP_API_VERSION
values enable backwards compatibility with lower (older) QP API versions.For example, QP_API_VERSION==691
will enable the compatibility layer with QP version 6.9.1 and newer, but not older than 6.9.1. QP_API_VERSION==0
enables the maximum currently supported backwards compatibility. Conversely, QP_API_VERSION==9999
means that no backwards compatibility layer should be enabled. Default: 0 (All supported)
Definition at line 61 of file qp_config.h.
#define Q_UNSAFE |
Disable the QP Functional Safety (FuSa) Subsystem.
Q_UNSAFE
disables QP FuSa Subsystem, which consists of the following facilities:Default: undefined
Q_UNSAFE
), especially in the final production release, CONTRADICTS the most fundamental principles of functional safety and is NOT recommended. Definition at line 91 of file qp_config.h.
#define Q_SIGNAL_SIZE 2U |
Size of the QEvt signal [bytes].
Definition at line 106 of file qp_config.h.
#define QF_MAX_ACTIVE 32U |
Maximum # Active Objects in the system (1..64)
Definition at line 123 of file qp_config.h.
#define QF_MAX_EPOOL 3U |
Maximum # event pools in the system (0..15)
Definition at line 133 of file qp_config.h.
#define QF_MAX_TICK_RATE 1U |
Maximum # clock tick rates in the system (0..15)
Definition at line 143 of file qp_config.h.
#define QEVT_PAR_INIT |
Event parameter initialization (RAII) for dynamic events.
Default: undefined
Definition at line 161 of file qp_config.h.
#define QACTIVE_CAN_STOP |
Enable the Active Object stop API.
Default: undefined
Definition at line 172 of file qp_config.h.
#define QF_EVENT_SIZ_SIZE 2U |
Maximum size of dynamic events managed by QP.
Default: 2 byte dynamic range (64K bytes maximum event size)
Definition at line 185 of file qp_config.h.
#define QF_TIMEEVT_CTR_SIZE 4U |
Time event counter size.
Default: 4 bytes (2^32 dynamic range)
Definition at line 200 of file qp_config.h.
#define QF_EQUEUE_CTR_SIZE 1U |
Event queue counter size.
Default: 1 (maximum 255 events in a queue)
Definition at line 213 of file qp_config.h.
#define QF_MPOOL_CTR_SIZE 2U |
Memory pool counter size (QF_MPOOL_CTR_SIZE)
Default: 2 bytes (up to 65535 memory blocks maximum in a pool)
Definition at line 227 of file qp_config.h.
#define QF_MPOOL_SIZ_SIZE 2U |
Memory block size (QF_MPOOL_SIZ_SIZE)
Default: 2 byte dynamic range (64K bytes maximum block size)
Definition at line 240 of file qp_config.h.
#define QS_TIME_SIZE 4U |
QS timestamp size (QS_TIME_SIZE)
Default: 4 bytes (2^32 dynamic range)
Definition at line 262 of file qp_config.h.
#define QS_CTR_SIZE 2U |
QS buffer counter size (QS_CTR_SIZE)
Default: 2 bytes (maximum 65535 bytes in QS buffers)
Definition at line 276 of file qp_config.h.
#define QF_ON_CONTEXT_SW |
#define QF_MEM_ISOLATE |
Enable MPU memory isolation.
Definition at line 299 of file qp_config.h.
#define QK_USE_IRQ_NUM 31 |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M.
This macro should be defined only if the NMI handler is utilized in the project. The specified IRQ number must be otherwise unused.
Default: undefined
Definition at line 318 of file qp_config.h.
#define QK_USE_IRQ_HANDLER Reserved31_IRQHandler |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M.
This macro should be defined only if the NMI handler is utilized in the project. The specified IRQ handler must be otherwise unused.
Definition at line 334 of file qp_config.h.
#define QXK_USE_IRQ_NUM 31 |
Use IRQ handler for QXK return-from-preemption in ARM Cortex-M.
This macro should be defined only if the NMI handler is utilized in the project. The specified IRQ number must be otherwise unused.
Default: undefined
Definition at line 352 of file qp_config.h.
#define QXK_USE_IRQ_HANDLER Reserved31_IRQHandler |
Use IRQ handler for QK return-from-preemption in ARM Cortex-M.
This macro should be defined only if the NMI handler is utilized in the project. The specified IRQ handler must be otherwise unused.
Default: undefined
Definition at line 370 of file qp_config.h.