J-LINK RTT代替串口进行打印
源码获取:
从JLINK安装目录拷贝RTT 压缩包SEGGER_RTT_V688a.zip到工程
添加源码:
SEGGER_RTT_V688a\RTT 文件夹下的文件添加入工程,并包含入头文件。
源程序配置RTT
1.设置RTT上传和下载buffer,默认上传1K
2. 测试功能:设置RTT接收数据然后回显
int main(void)
{
/* USER CODE BEGIN 1 */
int GetKey;
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
/* USER CODE BEGIN 2 */
SEGGER_RTT_ConfigUpBuffer(0, "RTTUP", NULL, 0, SEGGER_RTT_MODE_NO_BLOCK_SKIP);
SEGGER_RTT_ConfigDownBuffer(0, "RTTDOWN", NULL, 0, SEGGER_RTT_MODE_NO_BLOCK_SKIP);
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
if ( SEGGER_RTT_HasKey ())
{
GetKey = SEGGER_RTT_GetKey();
SEGGER_RTT_SetTerminal(0);
SEGGER_RTT_printf (0, "SEGGER_RTT_GetKey = %c\r\n", GetKey);
}
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}
资源需求:
IAR 8.2 ,优化 low
rom 需求:2K
ram 需求:1.3K (可以配置上传的buffer大小以减少ram)
Module ro code ro data rw data
------ ------- ------- -------
command line/config:
-------------------------------------------------
Total:
C:\Users\XXX\Desktop\threadX����\threadX\EWARM\threadX\Obj: [1]
SEGGER_RTT.o 932 36 1 225
SEGGER_RTT_printf.o 1 020 16