1、Log功能作用
日志打印(log)模块是分析程序流程和程序Bug的重要手段,嵌入式软件开发中,一般使用自己封装的Log程序模块,
而不会使用printf函数输出信息,原因如下:
1、可以在Log中封装数据流的接口,从而根据需求打印到各种终端,如下
(1):UART接口设备,可通过UART打印。
(2):显示屏设备,可以通过显示屏显示。
(3):用Jlink仿真器时,可通过Jlink RTT打印。
(4):等等不一一列举。
2、方便增加打印内容,可在不同类型日志前加上不同的信息前缀,错误信息前加代码行号方便定位
3、等等不一一列举
Log程序模块一般包含输出终端选择、日志开关、日志级别设置功能,用户可根据需求去使用Log
2、Log使用
2.1、终端选择
nRF52832的SDK提供两种输出终端:UART和JLINK-RTT, 在”sdk_config.h“中定义,如下图:

2.2、日志开关
nRF52832的SDK包含很多模块,某个出现问题,为了定位问题会需要其他模块不打印日志,只打印出问题的模块Log,
或者调试完成正式发布时,需要将Log全部关闭,便用到了日志开关,日志开关设置在”sdk_config.h“中定义,如下图: