本文深入讲解 Zephyr 的调试利器,包括统一日志系统(logging subsystem)、内置命令行(Shell CLI)、与 GDB 调试集成方法,帮助开发者快速定位问题、分析运行时行为,实现高效开发与排障。
一、日志系统 Logging Subsystem
1.1 功能概述
Zephyr 提供统一的日志系统,支持多模块、分级、异步/同步、后端可插拔等特性,是系统级调试的重要入口。
1.2 启用配置
CONFIG_LOG=y
CONFIG_LOG_MODE_IMMEDIATE=y
CONFIG_LOG_DEFAULT_LEVEL=4 # 默认 INFO 级别
CONFIG_LOG_BACKEND_UART=y
1.3 使用方式
#include <zephyr/logging/log.h>
LOG_MODULE_REGISTER(my_module, LOG_LEVEL_DBG);
LOG_INF("Hello Zephyr");
LOG_DBG("value=%d", x);
1.4 后端选择
-
CONFIG_LOG_BACKEND_UART:串口输出(默认) -
CONFIG_LOG_BACKEND_RTT:J-Link RTT 输出(调试方便) -
CONFIG_LOG_BACKEND_NET:通过网络传输日志
1.5 性能优化建议
-
使用



2256

被折叠的 条评论
为什么被折叠?



