RTT是基于Jlink调试器的实时传输技术,可以代替串口打印一些调试信息,不需要额外接线。
nordic 52832官方例程中,会将RTT打印函数做进一步封装,下面就讲一下怎么开启52832中的RTT打印。
RTT源代码可以在segger官方网站下载,也可以在nordic 52832例程中找到
在sdk_config.h中启用RTT
//==========================================================
//
//==========================================================
#ifndef NRF_LOG_BACKEND_RTT_ENABLED
#define NRF_LOG_BACKEND_RTT_ENABLED 1
#endif
在程序初始化阶段,添加以下代码
static void log_init(void)
{
ret_code_t err_code = NRF_LOG_INIT(NULL);
APP_ERROR_CHECK(err_code);
NRF_LOG_DEFAULT_BACKENDS_INIT();
}
log_init(); // 初始化LOG打印,由RTT工作
在需要打印信息的地方插入:
NRF_LOG_DEBUG("this is a rtt log");