28#if defined(__ARM_EABI__)
34#include <cmsis-plus/os-app-config.h>
36#if defined(OS_USE_TRACE_ITM)
42#include <cmsis_device.h>
61#if defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__)
72#if !defined(OS_INTEGER_TRACE_ITM_STIMULUS_PORT)
73#define OS_INTEGER_TRACE_ITM_STIMULUS_PORT (0)
77 write (
const void* buf, std::size_t nbyte)
79 if (buf ==
nullptr || nbyte == 0)
84 const char* cbuf = (
const char*) buf;
86 for (
size_t i = 0; i < nbyte; i++)
89 if (((ITM->TCR & ITM_TCR_ITMENA_Msk) == 0)
106 return (ssize_t) nbyte;
111#error "ITM available only on ARCH 7M"
#define OS_INTEGER_TRACE_ITM_STIMULUS_PORT
Define the ITM stimulus port used for the trace messages.
ssize_t write(const void *buf, std::size_t nbyte)
Write the given number of bytes to the trace output channel.