RTT Log 打印 & UART打印

RTT Log 打印:

参考:https://blog.csdn.net/qq_28877125/article/details/86308317

言简意赅 先做再说

板子:E:\BaiduNetdiskDownload\NRF52832DK\nRF5_SDK_15.2.0\nRF5_SDK_15.2.0_9412b96\examples\ble_peripheral\ble_app_blinky

直接debug

 

结论:比较简单 就是一句话

NRF_LOG_BACKEND_RTT_ENABLED    1
NRF_LOG_BACKEND_UART_ENABLED 0

UART_CONFIG_LOG_ENABLED

即可

 

 

 

UART打印:

测试代码

    advertising_start();
NRF_LOG_ERROR("HELLO\r\n");             
NRF_LOG_WARNING("HELLO\r\n");                   
NRF_LOG_INFO("HELLO\r\n");                      
NRF_LOG_DEBUG("HELLO\r\n"); 

代码

NRF_LOG_BACKEND_RTT_ENABLED 0
NRF_LOG_BACKEND_UART_ENABLED 1

后面的红开关
NRF_LOG_BACKEND_UART_BAUDRATE -- 115200
NRF_LOG_BACKEND_UART_TEMP_BUFFER_SIZE --256
NRF_LOG_BACKEND_UART_TX_PIN  --6

最重要的就是接线了 因为RTT不需要接线 这里需要一个USB串口

 

 

一些红

NRF_LOG_DEFAULT_LEVEL 4 全部打印

举例说明
#ifndef NRF_LOG_DEFAULT_LEVEL
#define NRF_LOG_DEFAULT_LEVEL 3
#endif
此时我看到
NRF_LOG_ERROR("HELLO\r\n");             
NRF_LOG_WARNING("HELLO\r\n");                   
NRF_LOG_INFO("HELLO\r\n");                      
NRF_LOG_DEBUG("HELLO\r\n");
00> <error> app: HELLO
00> <warning> app: HELLO
00> <info> app: HELLO
没有出现最后一个
因为
// <0=> Off 
// <1=> Error 
// <2=> Warning 
// <3=> Info 
// <4=> Debug
也就是我设置的是3 可以打印0-1-2-3 不能打印4


NRF_LOG_USES_COLORS=1
NRF_LOG_COLOR_DEFAULT=3

 

 

 

+++++++++++++++++++继续+++++++++++++++++

准备GUI  参考文字 https://mp.weixin.qq.com/s/jIdsaxiD3D677DtzkOZgQQ
注意 我需要重新修改printf
如果需要使用打印调试功能的话,平时的使用MicroLIB的方法重定向printf函数就行不通了
参考 串口打印知多少?  https://mp.weixin.qq.com/s/BBY9v_o6A0fU7t6lQeO6rw

http://news.eeworld.com.cn/mcu/ic467839.html

在MDK环境中,我们常常使用MicroLIB+fputc的方式实现串口打印功能
正点原子裸机串口相关的例程,他们的串口例程里不使用MicroLIB,而是使用标准库+fputc的方式

我的问题 NRF_LOG_INFO 不使用 MicroLIB

https://www.pianshen.com/article/16361546458/

https://www.cnblogs.com/iini/p/9279618.html 只能1个断点

 

我第一步直接去掉勾勾 出现问题

.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol __stdout_name multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol __stderr_name multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_close multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_ensure multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_flen multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_istty multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_open multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_read multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_seek multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
.\_build\nrf52840_xxaa.axf: Error: L6200E: Symbol _sys_write multiply defined (by sys_io.o and segger_rtt_syscalls_keil.o).
 

第二步下架文件夹中2个问题可以看log

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值