92 lines
3.6 KiB
C
92 lines
3.6 KiB
C
/**
|
|
* \file
|
|
* \brief Configuration header file for Segger RTT.
|
|
* Copyright (c) 2020, Erich Styger
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*
|
|
* This header file is used to configure settings of the Segger RTT Module.
|
|
*/
|
|
|
|
#ifndef __McuRTT_CONFIG_H
|
|
#define __McuRTT_CONFIG_H
|
|
|
|
#include "McuLib.h" /* SDK and API used */
|
|
|
|
#ifndef RTT_USE_ASM
|
|
#define RTT_USE_ASM (0)
|
|
/*!< 1: use assembly version of low level buffer routines; 0: use C version */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_PROVIDE_SYSCALLS
|
|
#define McuRTT_CONFIG_PROVIDE_SYSCALLS (0)
|
|
/*!< 1: RTT library implements SysCalls; 0: no Syscalls implemented */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_BLOCKING_SEND
|
|
#define McuRTT_CONFIG_BLOCKING_SEND (0)
|
|
/*!< 1: using blocking call for stdio calls; 0: do not using blocking calls */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_BLOCKING_SEND_TIMEOUT_MS
|
|
#define McuRTT_CONFIG_BLOCKING_SEND_TIMEOUT_MS (0)
|
|
/*!< Timeout value for blocking calls for sending. Use zero for no timeout */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_BLOCKING_SEND_WAIT_MS
|
|
#define McuRTT_CONFIG_BLOCKING_SEND_WAIT_MS (0)
|
|
/*!< Waiting time during blocking send. Use zero for no waiting time */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_BUFFER_SIZE_UP
|
|
#define McuRTT_CONFIG_RTT_BUFFER_SIZE_UP (512)
|
|
/*!< Size of the up (Tx on the target side) buffer in bytes */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_BUFFER_SIZE_DOWN
|
|
#define McuRTT_CONFIG_RTT_BUFFER_SIZE_DOWN (64)
|
|
/*!< Size of the down (Rx on the target side) buffer in bytes */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_BUFFER_SIZE_PRINTF
|
|
#define McuRTT_CONFIG_RTT_BUFFER_SIZE_PRINTF (64)
|
|
/*!< Size of the buffer for RTT printf() in bytes */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_UP_BUFFER_MODE
|
|
#define McuRTT_CONFIG_RTT_UP_BUFFER_MODE (SEGGER_RTT_MODE_NO_BLOCK_SKIP)
|
|
/*!< Up buffer mode: SEGGER_RTT_MODE_NO_BLOCK_SKIP, SEGGER_RTT_MODE_NO_BLOCK_TRIM or SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_DOWN_BUFFER_MODE
|
|
#define McuRTT_CONFIG_RTT_DOWN_BUFFER_MODE (SEGGER_RTT_MODE_NO_BLOCK_SKIP)
|
|
/*!< Up buffer mode: SEGGER_RTT_MODE_NO_BLOCK_SKIP, SEGGER_RTT_MODE_NO_BLOCK_TRIM or SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_MAX_NUM_UP_BUFFERS
|
|
#define McuRTT_CONFIG_RTT_MAX_NUM_UP_BUFFERS (3)
|
|
/*!< Max. number of up-buffers (T->H) available on this target (Default: 3) */
|
|
#endif
|
|
|
|
#ifndef McuRTT_CONFIG_RTT_MAX_NUM_DOWN_BUFFERS
|
|
#define McuRTT_CONFIG_RTT_MAX_NUM_DOWN_BUFFERS (3)
|
|
/*!< Max. number of down-buffers (H->T) available on this target (Default: 3) */
|
|
#endif
|
|
|
|
#if McuLib_CONFIG_SDK_USE_FREERTOS
|
|
#define SEGGER_RTT_MAX_INTERRUPT_PRIORITY configMAX_SYSCALL_INTERRUPT_PRIORITY /* Interrupts at this level and below will be blocked (valid values 1-15) */
|
|
#else
|
|
#define SEGGER_RTT_LOCK_INTERRUPT_LEVEL (3) /* Interrupts at this level and below will be blocked (valid values 1-15 for Kinetis) */
|
|
#define SEGGER_RTT_PRIO_BITS 4 /* NXP Kinetis M4(F) has 4 interrupt priority bits */
|
|
#define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (SEGGER_RTT_LOCK_INTERRUPT_LEVEL<<(8-SEGGER_RTT_PRIO_BITS))
|
|
#endif
|
|
|
|
/* channel0 settings */
|
|
#define SEGGER_RTT_CHANNEL_0_ENABLED (1) /* 1: initialize channel; 0: do not initialize channel */
|
|
#define SEGGER_RTT_CHANNEL_0_NAME "Terminal"
|
|
#define SEGGER_RTT_CHANNEL_0_BUFFER_SIZE_UP (McuRTT_CONFIG_RTT_BUFFER_SIZE_UP)
|
|
#define SEGGER_RTT_CHANNEL_0_BUFFER_SIZE_DOWN (McuRTT_CONFIG_RTT_BUFFER_SIZE_DOWN)
|
|
#define SEGGER_RTT_CHANNEL_0_MODE_UP SEGGER_RTT_MODE_NO_BLOCK_SKIP
|
|
#define SEGGER_RTT_CHANNEL_0_MODE_DOWN SEGGER_RTT_MODE_NO_BLOCK_SKIP
|
|
|
|
#endif /* __McuRTT_CONFIG_H */
|