OS  v1.7.5
Documentation
Loading...
Searching...
No Matches
Configuration

Some OS features can be customized using a set of macros located in the header file config.h. More...

Collaboration diagram for Configuration:

Macros

#define Q_PRIORITY_LEVELS
 Number of priority levels.
 
#define Q_PRIO_QUEUE_SIZE
 The size of the priority queue.
 
#define Q_ALLOW_SCHEDULER_RELEASE
 Allow scheduler release action.
 
#define Q_PRESERVE_TASK_ENTRY_ORDER
 Preserve task entry order.
 
#define Q_BYTE_ALIGNMENT
 Byte alignment used by the memory manager.
 
#define Q_DEFAULT_HEAP_SIZE
 Heap size fo the default memory pool.
 
#define Q_FSM
 Finite State Machine enabler.
 
#define Q_FSM_MAX_NEST_DEPTH
 Finite State Machine : nest depth.
 
#define Q_FSM_MAX_TIMEOUTS
 Finite State Machine : number of timeouts.
 
#define Q_FSM_PS_SIGNALS_MAX
 Finite State Machine : number of signals to subscribe.
 
#define Q_FSM_PS_SUB_PER_SIGNAL_MAX
 Finite State Machine : subscribers per signal.
 
#define Q_TRACE_BUFSIZE
 Size for the trace internal buffer.
 
#define Q_CLI
 AT Command Line Interface enabler.
 
#define Q_QUEUES
 Queues enabler.
 
#define Q_LOGGER_COLORED
 Colored output in logger.
 

Detailed Description

Some OS features can be customized using a set of macros located in the header file config.h.

Macro Definition Documentation

◆ Q_ALLOW_SCHEDULER_RELEASE

#define Q_ALLOW_SCHEDULER_RELEASE

Allow scheduler release action.

Used to enable or disable the release of the scheduling.

Note
Default value 1 enabled

◆ Q_BYTE_ALIGNMENT

#define Q_BYTE_ALIGNMENT

Byte alignment used by the memory manager.

Use a number in power of two for this configuration.

Note
Default value 8

◆ Q_CLI

#define Q_CLI

AT Command Line Interface enabler.

Used to enable or disable the AT Command Line Interface(CLI)

Note
Default value 1 enabled

◆ Q_DEFAULT_HEAP_SIZE

#define Q_DEFAULT_HEAP_SIZE

Heap size fo the default memory pool.

This also will enable new and delete operators if not available in the target compiler.

Note
Default value 0 disabled

◆ Q_FSM

#define Q_FSM

Finite State Machine enabler.

Used to enable or disable the Finite State Machine (FSM) module

Note
Default value 1 enabled

◆ Q_FSM_MAX_NEST_DEPTH

#define Q_FSM_MAX_NEST_DEPTH

Finite State Machine : nest depth.

The max depth of nesting for the Finite State Machines (FSM) module. This setting its required to allow hierarchical state machines. Use a value greater than 1

Note
Default value 5

◆ Q_FSM_MAX_TIMEOUTS

#define Q_FSM_MAX_TIMEOUTS

Finite State Machine : number of timeouts.

Max number of timeouts inside a timeout specification for the Finite State machine (FSM) module

Note
Default value 3

◆ Q_FSM_PS_SIGNALS_MAX

#define Q_FSM_PS_SIGNALS_MAX

Finite State Machine : number of signals to subscribe.

Max number of signals to subscribe for a single FSM object.

Note
Default value 8

◆ Q_FSM_PS_SUB_PER_SIGNAL_MAX

#define Q_FSM_PS_SUB_PER_SIGNAL_MAX

Finite State Machine : subscribers per signal.

Max number of FSM subscribers per signal.

Note
Default value 4

◆ Q_LOGGER_COLORED

#define Q_LOGGER_COLORED

Colored output in logger.

Used to enable colored output in supported terminals when using logger

Note
Default value 0 disabled

◆ Q_PRESERVE_TASK_ENTRY_ORDER

#define Q_PRESERVE_TASK_ENTRY_ORDER

Preserve task entry order.

If enabled, kernel will preserve the tasks entry order every OS scheduling cycle.

Note
Default value 1 enabled

◆ Q_PRIO_QUEUE_SIZE

#define Q_PRIO_QUEUE_SIZE

The size of the priority queue.

The size of the priority FIFO queue for notifications (use a 0(zero) value to disable it)

Note
Default value 10

◆ Q_PRIORITY_LEVELS

#define Q_PRIORITY_LEVELS

Number of priority levels.

The number of priorities available to the application tasks

Note
Default value 3 The number of priorities available to the application tasks

◆ Q_QUEUES

#define Q_QUEUES

Queues enabler.

Used to enable or disable OS queues

Note
Default value 1 enabled

◆ Q_TRACE_BUFSIZE

#define Q_TRACE_BUFSIZE

Size for the trace internal buffer.

The trace object requires an internal buffer for standard integer conversions. This macro defines its size. 36 bytes should be enough

Note
Default value 36