/********************************************************************* | |
* SEGGER MICROCONTROLLER SYSTEME GmbH * | |
* Solutions for real time microcontroller applications * | |
********************************************************************** | |
* * | |
* (c) 1996-2014 SEGGER Microcontroller Systeme GmbH * | |
* * | |
* Internet: www.segger.com Support: support@segger.com * | |
* * | |
********************************************************************** | |
---------------------------------------------------------------------- | |
File : SEGGER_RTT.h | |
Date : 17 Dec 2014 | |
Purpose : Implementation of SEGGER real-time terminal which allows | |
real-time terminal communication on targets which support | |
debugger memory accesses while the CPU is running. | |
---------------------------END-OF-HEADER------------------------------ | |
*/ | |
/********************************************************************* | |
* | |
* Defines | |
* | |
********************************************************************** | |
*/ | |
#define SEGGER_RTT_MODE_MASK (3 << 0) | |
#define SEGGER_RTT_MODE_NO_BLOCK_SKIP (0) | |
#define SEGGER_RTT_MODE_NO_BLOCK_TRIM (1 << 0) | |
#define SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL (1 << 1) | |
#define RTT_CTRL_RESET "[0m" | |
#define RTT_CTRL_CLEAR "[2J" | |
#define RTT_CTRL_TEXT_BLACK "[2;30m" | |
#define RTT_CTRL_TEXT_RED "[2;31m" | |
#define RTT_CTRL_TEXT_GREEN "[2;32m" | |
#define RTT_CTRL_TEXT_YELLOW "[2;33m" | |
#define RTT_CTRL_TEXT_BLUE "[2;34m" | |
#define RTT_CTRL_TEXT_MAGENTA "[2;35m" | |
#define RTT_CTRL_TEXT_CYAN "[2;36m" | |
#define RTT_CTRL_TEXT_WHITE "[2;37m" | |
#define RTT_CTRL_TEXT_BRIGHT_BLACK "[1;30m" | |
#define RTT_CTRL_TEXT_BRIGHT_RED "[1;31m" | |
#define RTT_CTRL_TEXT_BRIGHT_GREEN "[1;32m" | |
#define RTT_CTRL_TEXT_BRIGHT_YELLOW "[1;33m" | |
#define RTT_CTRL_TEXT_BRIGHT_BLUE "[1;34m" | |
#define RTT_CTRL_TEXT_BRIGHT_MAGENTA "[1;35m" | |
#define RTT_CTRL_TEXT_BRIGHT_CYAN "[1;36m" | |
#define RTT_CTRL_TEXT_BRIGHT_WHITE "[1;37m" | |
#define RTT_CTRL_BG_BLACK "[24;40m" | |
#define RTT_CTRL_BG_RED "[24;41m" | |
#define RTT_CTRL_BG_GREEN "[24;42m" | |
#define RTT_CTRL_BG_YELLOW "[24;43m" | |
#define RTT_CTRL_BG_BLUE "[24;44m" | |
#define RTT_CTRL_BG_MAGENTA "[24;45m" | |
#define RTT_CTRL_BG_CYAN "[24;46m" | |
#define RTT_CTRL_BG_WHITE "[24;47m" | |
#define RTT_CTRL_BG_BRIGHT_BLACK "[4;40m" | |
#define RTT_CTRL_BG_BRIGHT_RED "[4;41m" | |
#define RTT_CTRL_BG_BRIGHT_GREEN "[4;42m" | |
#define RTT_CTRL_BG_BRIGHT_YELLOW "[4;43m" | |
#define RTT_CTRL_BG_BRIGHT_BLUE "[4;44m" | |
#define RTT_CTRL_BG_BRIGHT_MAGENTA "[4;45m" | |
#define RTT_CTRL_BG_BRIGHT_CYAN "[4;46m" | |
#define RTT_CTRL_BG_BRIGHT_WHITE "[4;47m" | |
/********************************************************************* | |
* | |
* RTT API functions | |
* | |
********************************************************************** | |
*/ | |
int SEGGER_RTT_Read (unsigned BufferIndex, char* pBuffer, unsigned BufferSize); | |
int SEGGER_RTT_Write (unsigned BufferIndex, const char* pBuffer, unsigned NumBytes); | |
int SEGGER_RTT_WriteString (unsigned BufferIndex, const char* s); | |
int SEGGER_RTT_GetKey (void); | |
int SEGGER_RTT_WaitKey (void); | |
int SEGGER_RTT_HasKey (void); | |
int SEGGER_RTT_ConfigUpBuffer (unsigned BufferIndex, const char* sName, char* pBuffer, int BufferSize, int Flags); | |
int SEGGER_RTT_ConfigDownBuffer (unsigned BufferIndex, const char* sName, char* pBuffer, int BufferSize, int Flags); | |
void SEGGER_RTT_Init (void); | |
/********************************************************************* | |
* | |
* RTT "Terminal" API functions | |
* | |
********************************************************************** | |
*/ | |
void SEGGER_RTT_SetTerminal (char TerminalId); | |
int SEGGER_RTT_TerminalOut (char TerminalId, const char* s); | |
/********************************************************************* | |
* | |
* RTT printf functions (require SEGGER_RTT_printf.c) | |
* | |
********************************************************************** | |
*/ | |
int SEGGER_RTT_printf(unsigned BufferIndex, const char * sFormat, ...); | |
/*************************** End of file ****************************/ |