Brick Groove Machine 0.9.3
Firmware embarqué pour contrôleur/synthé Brick
 
Chargement...
Recherche...
Aucune correspondance
Config

Fichiers

fichier  brick_config.h
 Configuration matérielle et paramètres globaux du firmware Brick.
 

Macros

#define _CHIBIOS_RT_CONF_
 
#define _CHIBIOS_RT_CONF_VER_8_0_
 
#define CH_CFG_HARDENING_LEVEL   0
 

System settings

#define CH_CFG_SMP_MODE   FALSE
 Handling of instances (SMP mode).
 

System timers settings

#define CH_CFG_ST_RESOLUTION   32
 System time counter resolution.
 
#define CH_CFG_ST_FREQUENCY   10000
 System tick frequency.
 
#define CH_CFG_INTERVALS_SIZE   32
 Time intervals data size.
 
#define CH_CFG_TIME_TYPES_SIZE   32
 Time types data size.
 
#define CH_CFG_ST_TIMEDELTA   2
 Time delta constant for the tick-less mode.
 

Kernel parameters and options

#define CH_CFG_TIME_QUANTUM   0
 Round robin interval.
 
#define CH_CFG_NO_IDLE_THREAD   FALSE
 Idle thread automatic spawn suppression.
 

Performance options

#define CH_CFG_OPTIMIZE_SPEED   TRUE
 OS optimization for speed.
 

Subsystem options

#define CH_CFG_USE_TM   TRUE
 
#define CH_CFG_USE_TIMESTAMP   TRUE
 
#define CH_CFG_USE_REGISTRY   TRUE
 
#define CH_CFG_USE_WAITEXIT   TRUE
 
#define CH_CFG_USE_SEMAPHORES   TRUE
 
#define CH_CFG_USE_SEMAPHORES_PRIORITY   FALSE
 
#define CH_CFG_USE_MUTEXES   TRUE
 
#define CH_CFG_USE_MUTEXES_RECURSIVE   FALSE
 
#define CH_CFG_USE_CONDVARS   TRUE
 
#define CH_CFG_USE_CONDVARS_TIMEOUT   TRUE
 
#define CH_CFG_USE_EVENTS   TRUE
 
#define CH_CFG_USE_EVENTS_TIMEOUT   TRUE
 
#define CH_CFG_USE_MESSAGES   TRUE
 
#define CH_CFG_USE_MESSAGES_PRIORITY   FALSE
 
#define CH_CFG_USE_DYNAMIC   TRUE
 

OSLIB options

#define CH_CFG_USE_MAILBOXES   TRUE
 
#define CH_CFG_USE_MEMCHECKS   FALSE
 
#define CH_CFG_USE_MEMCORE   TRUE
 
#define CH_CFG_MEMCORE_SIZE   0
 
#define CH_CFG_USE_HEAP   TRUE
 
#define CH_CFG_USE_MEMPOOLS   TRUE
 
#define CH_CFG_USE_OBJ_FIFOS   TRUE
 
#define CH_CFG_USE_PIPES   TRUE
 
#define CH_CFG_USE_OBJ_CACHES   TRUE
 
#define CH_CFG_USE_DELEGATES   TRUE
 
#define CH_CFG_USE_JOBS   TRUE
 

Objects factory options

#define CH_CFG_USE_FACTORY   TRUE
 
#define CH_CFG_FACTORY_MAX_NAMES_LENGTH   8
 
#define CH_CFG_FACTORY_OBJECTS_REGISTRY   TRUE
 
#define CH_CFG_FACTORY_GENERIC_BUFFERS   TRUE
 
#define CH_CFG_FACTORY_SEMAPHORES   TRUE
 
#define CH_CFG_FACTORY_MAILBOXES   TRUE
 
#define CH_CFG_FACTORY_OBJ_FIFOS   TRUE
 
#define CH_CFG_FACTORY_PIPES   TRUE
 

Debug options

#define CH_DBG_STATISTICS   FALSE
 
#define CH_DBG_SYSTEM_STATE_CHECK   FALSE
 
#define CH_DBG_ENABLE_CHECKS   FALSE
 
#define CH_DBG_ENABLE_ASSERTS   FALSE
 
#define CH_DBG_TRACE_MASK   CH_DBG_TRACE_MASK_SLOW
 
#define CH_DBG_TRACE_BUFFER_SIZE   128
 
#define CH_DBG_ENABLE_STACK_CHECK   TRUE
 
#define CH_DBG_FILL_THREADS   FALSE
 
#define CH_DBG_THREADS_PROFILING   FALSE
 

Kernel hooks

#define CH_CFG_SYSTEM_EXTRA_FIELDS    /* Add system custom fields here.*/
 
#define CH_CFG_SYSTEM_INIT_HOOK()
 
#define CH_CFG_OS_INSTANCE_EXTRA_FIELDS    /* Add OS instance custom fields here.*/
 
#define CH_CFG_OS_INSTANCE_INIT_HOOK(oip)
 
#define CH_CFG_THREAD_EXTRA_FIELDS    /* Add threads custom fields here.*/
 
#define CH_CFG_THREAD_INIT_HOOK(tp)
 
#define CH_CFG_THREAD_EXIT_HOOK(tp)
 
#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp)
 
#define CH_CFG_IRQ_PROLOGUE_HOOK()
 
#define CH_CFG_IRQ_EPILOGUE_HOOK()
 
#define CH_CFG_IDLE_ENTER_HOOK()
 
#define CH_CFG_IDLE_LEAVE_HOOK()
 
#define CH_CFG_IDLE_LOOP_HOOK()
 
#define CH_CFG_SYSTEM_TICK_HOOK()
 
#define CH_CFG_SYSTEM_HALT_HOOK(reason)
 
#define CH_CFG_TRACE_HOOK(tep)
 
#define CH_CFG_RUNTIME_FAULTS_HOOK(mask)
 

Description détaillée

Kernel related settings and hooks.

Documentation des macros

◆ _CHIBIOS_RT_CONF_

#define _CHIBIOS_RT_CONF_

◆ _CHIBIOS_RT_CONF_VER_8_0_

#define _CHIBIOS_RT_CONF_VER_8_0_

◆ CH_CFG_CONTEXT_SWITCH_HOOK

#define CH_CFG_CONTEXT_SWITCH_HOOK (   ntp,
  otp 
)
Valeur :
{ \
/* Context switch code here.*/ \
}

◆ CH_CFG_FACTORY_GENERIC_BUFFERS

#define CH_CFG_FACTORY_GENERIC_BUFFERS   TRUE

◆ CH_CFG_FACTORY_MAILBOXES

#define CH_CFG_FACTORY_MAILBOXES   TRUE

◆ CH_CFG_FACTORY_MAX_NAMES_LENGTH

#define CH_CFG_FACTORY_MAX_NAMES_LENGTH   8

◆ CH_CFG_FACTORY_OBJ_FIFOS

#define CH_CFG_FACTORY_OBJ_FIFOS   TRUE

◆ CH_CFG_FACTORY_OBJECTS_REGISTRY

#define CH_CFG_FACTORY_OBJECTS_REGISTRY   TRUE

◆ CH_CFG_FACTORY_PIPES

#define CH_CFG_FACTORY_PIPES   TRUE

◆ CH_CFG_FACTORY_SEMAPHORES

#define CH_CFG_FACTORY_SEMAPHORES   TRUE

◆ CH_CFG_HARDENING_LEVEL

#define CH_CFG_HARDENING_LEVEL   0

◆ CH_CFG_IDLE_ENTER_HOOK

#define CH_CFG_IDLE_ENTER_HOOK ( )
Valeur :
{ \
/* Idle-enter code here.*/ \
}

◆ CH_CFG_IDLE_LEAVE_HOOK

#define CH_CFG_IDLE_LEAVE_HOOK ( )
Valeur :
{ \
/* Idle-leave code here.*/ \
}

◆ CH_CFG_IDLE_LOOP_HOOK

#define CH_CFG_IDLE_LOOP_HOOK ( )
Valeur :
{ \
/* Idle loop code here.*/ \
}

◆ CH_CFG_INTERVALS_SIZE

#define CH_CFG_INTERVALS_SIZE   32

Time intervals data size.

Note
Allowed values are 16, 32 or 64 bits.

◆ CH_CFG_IRQ_EPILOGUE_HOOK

#define CH_CFG_IRQ_EPILOGUE_HOOK ( )
Valeur :
{ \
/* IRQ epilogue code here.*/ \
}

◆ CH_CFG_IRQ_PROLOGUE_HOOK

#define CH_CFG_IRQ_PROLOGUE_HOOK ( )
Valeur :
{ \
/* IRQ prologue code here.*/ \
}

◆ CH_CFG_MEMCORE_SIZE

#define CH_CFG_MEMCORE_SIZE   0

◆ CH_CFG_NO_IDLE_THREAD

#define CH_CFG_NO_IDLE_THREAD   FALSE

Idle thread automatic spawn suppression.

◆ CH_CFG_OPTIMIZE_SPEED

#define CH_CFG_OPTIMIZE_SPEED   TRUE

OS optimization for speed.

◆ CH_CFG_OS_INSTANCE_EXTRA_FIELDS

#define CH_CFG_OS_INSTANCE_EXTRA_FIELDS    /* Add OS instance custom fields here.*/

◆ CH_CFG_OS_INSTANCE_INIT_HOOK

#define CH_CFG_OS_INSTANCE_INIT_HOOK (   oip)
Valeur :
{ \
/* Add OS instance initialization code here.*/ \
}

◆ CH_CFG_RUNTIME_FAULTS_HOOK

#define CH_CFG_RUNTIME_FAULTS_HOOK (   mask)
Valeur :
{ \
/* Faults handling code here.*/ \
}

◆ CH_CFG_SMP_MODE

#define CH_CFG_SMP_MODE   FALSE

Handling of instances (SMP mode).

◆ CH_CFG_ST_FREQUENCY

#define CH_CFG_ST_FREQUENCY   10000

System tick frequency.

Frequency of the system timer that drives the system ticks.

◆ CH_CFG_ST_RESOLUTION

#define CH_CFG_ST_RESOLUTION   32

System time counter resolution.

Note
Allowed values are 16, 32 or 64 bits.

◆ CH_CFG_ST_TIMEDELTA

#define CH_CFG_ST_TIMEDELTA   2

Time delta constant for the tick-less mode.

Note
If zero then classic periodic tick, otherwise tickless.

◆ CH_CFG_SYSTEM_EXTRA_FIELDS

#define CH_CFG_SYSTEM_EXTRA_FIELDS    /* Add system custom fields here.*/

◆ CH_CFG_SYSTEM_HALT_HOOK

#define CH_CFG_SYSTEM_HALT_HOOK (   reason)
Valeur :
{ \
/* System halt code here.*/ \
}

◆ CH_CFG_SYSTEM_INIT_HOOK

#define CH_CFG_SYSTEM_INIT_HOOK ( )
Valeur :
{ \
/* Add system initialization code here.*/ \
}

◆ CH_CFG_SYSTEM_TICK_HOOK

#define CH_CFG_SYSTEM_TICK_HOOK ( )
Valeur :
{ \
/* System tick event code here.*/ \
}

◆ CH_CFG_THREAD_EXIT_HOOK

#define CH_CFG_THREAD_EXIT_HOOK (   tp)
Valeur :
{ \
/* Add threads finalization code here.*/ \
}

◆ CH_CFG_THREAD_EXTRA_FIELDS

#define CH_CFG_THREAD_EXTRA_FIELDS    /* Add threads custom fields here.*/

◆ CH_CFG_THREAD_INIT_HOOK

#define CH_CFG_THREAD_INIT_HOOK (   tp)
Valeur :
{ \
/* Add threads initialization code here.*/ \
}

◆ CH_CFG_TIME_QUANTUM

#define CH_CFG_TIME_QUANTUM   0

Round robin interval.

Note
Must be 0 in tickless mode.

◆ CH_CFG_TIME_TYPES_SIZE

#define CH_CFG_TIME_TYPES_SIZE   32

Time types data size.

Note
Allowed values are 16 or 32 bits.

◆ CH_CFG_TRACE_HOOK

#define CH_CFG_TRACE_HOOK (   tep)
Valeur :
{ \
/* Trace code here.*/ \
}

◆ CH_CFG_USE_CONDVARS

#define CH_CFG_USE_CONDVARS   TRUE

◆ CH_CFG_USE_CONDVARS_TIMEOUT

#define CH_CFG_USE_CONDVARS_TIMEOUT   TRUE

◆ CH_CFG_USE_DELEGATES

#define CH_CFG_USE_DELEGATES   TRUE

◆ CH_CFG_USE_DYNAMIC

#define CH_CFG_USE_DYNAMIC   TRUE

◆ CH_CFG_USE_EVENTS

#define CH_CFG_USE_EVENTS   TRUE

◆ CH_CFG_USE_EVENTS_TIMEOUT

#define CH_CFG_USE_EVENTS_TIMEOUT   TRUE

◆ CH_CFG_USE_FACTORY

#define CH_CFG_USE_FACTORY   TRUE

◆ CH_CFG_USE_HEAP

#define CH_CFG_USE_HEAP   TRUE

◆ CH_CFG_USE_JOBS

#define CH_CFG_USE_JOBS   TRUE

◆ CH_CFG_USE_MAILBOXES

#define CH_CFG_USE_MAILBOXES   TRUE

◆ CH_CFG_USE_MEMCHECKS

#define CH_CFG_USE_MEMCHECKS   FALSE

◆ CH_CFG_USE_MEMCORE

#define CH_CFG_USE_MEMCORE   TRUE

◆ CH_CFG_USE_MEMPOOLS

#define CH_CFG_USE_MEMPOOLS   TRUE

◆ CH_CFG_USE_MESSAGES

#define CH_CFG_USE_MESSAGES   TRUE

◆ CH_CFG_USE_MESSAGES_PRIORITY

#define CH_CFG_USE_MESSAGES_PRIORITY   FALSE

◆ CH_CFG_USE_MUTEXES

#define CH_CFG_USE_MUTEXES   TRUE

◆ CH_CFG_USE_MUTEXES_RECURSIVE

#define CH_CFG_USE_MUTEXES_RECURSIVE   FALSE

◆ CH_CFG_USE_OBJ_CACHES

#define CH_CFG_USE_OBJ_CACHES   TRUE

◆ CH_CFG_USE_OBJ_FIFOS

#define CH_CFG_USE_OBJ_FIFOS   TRUE

◆ CH_CFG_USE_PIPES

#define CH_CFG_USE_PIPES   TRUE

◆ CH_CFG_USE_REGISTRY

#define CH_CFG_USE_REGISTRY   TRUE

◆ CH_CFG_USE_SEMAPHORES

#define CH_CFG_USE_SEMAPHORES   TRUE

◆ CH_CFG_USE_SEMAPHORES_PRIORITY

#define CH_CFG_USE_SEMAPHORES_PRIORITY   FALSE

◆ CH_CFG_USE_TIMESTAMP

#define CH_CFG_USE_TIMESTAMP   TRUE

◆ CH_CFG_USE_TM

#define CH_CFG_USE_TM   TRUE

◆ CH_CFG_USE_WAITEXIT

#define CH_CFG_USE_WAITEXIT   TRUE

◆ CH_DBG_ENABLE_ASSERTS

#define CH_DBG_ENABLE_ASSERTS   FALSE

◆ CH_DBG_ENABLE_CHECKS

#define CH_DBG_ENABLE_CHECKS   FALSE

◆ CH_DBG_ENABLE_STACK_CHECK

#define CH_DBG_ENABLE_STACK_CHECK   TRUE

◆ CH_DBG_FILL_THREADS

#define CH_DBG_FILL_THREADS   FALSE

◆ CH_DBG_STATISTICS

#define CH_DBG_STATISTICS   FALSE

◆ CH_DBG_SYSTEM_STATE_CHECK

#define CH_DBG_SYSTEM_STATE_CHECK   FALSE

◆ CH_DBG_THREADS_PROFILING

#define CH_DBG_THREADS_PROFILING   FALSE

◆ CH_DBG_TRACE_BUFFER_SIZE

#define CH_DBG_TRACE_BUFFER_SIZE   128

◆ CH_DBG_TRACE_MASK

#define CH_DBG_TRACE_MASK   CH_DBG_TRACE_MASK_SLOW