Telink Mesh SDK 调试log打印
Telink 官网论坛建议使用GPIO模拟串口打印log,推荐阅读Telink官网发布的最新SDK使用手册,更新了不少东西
参考博文:
Telink BLE MESH开发|ble mesh开发教程《二》telink_sig_mesh增加调试信息打印
泰凌微 ble mesh
一. 使用串口打印log
串口同时还可用于Gateway UART 模式的 BLE 连接和加灯。
1.使能uart log 宏HCI_USE_UART
在app_config_8258.h 文件中 ,HCI_ACCESS 选为 HCI_USE_UART
#define HCI_ACCESS HCI_USE_UART
#define UART_TX_PIN UART_TX_PD7 // 设置端口
#define UART_RX_PIN UART_RX_PA0
2. 使用my_printf_uart()函数输出log信息。
二. 使用GPIO模拟串口打印log
默认只有输出 ,没有输入!
1. 打开log输出宏
在工程目录 app/app_config_8258.h
文件中,有如下与日志打印相关的宏定义:
#define HCI_LOG_FW_EN 1 // 使能打印log宏
#if HCI_LOG_FW_EN
#define DEBUG_INFO_TX_PIN GPIO_PB2 // 设置tx端口
#define PRINT_DEBUG_INFO 1
#endif
2. 设置波特率
在vendor/common/myprintf.h文件中,宏定义BAUD_USE
决定了波特率,用户可将其改为其他值
#define SIMU_BAUD_115200 115200
#define SIMU_BAUD_230400 230400
#define SIMU_BAUD_1M 1000000
#define BAUD_USE SIMU_BAUD_115200 //官方建议使用1M
3. log等级设置,修改等级可过滤一些log
log 分级信息如下
TL_LOG_LEVEL_DISABLE:禁止
TL_LOG_LEVEL_ERROR:错误
TL_LOG_LEVEL_WARNING:警告
TL_LOG_LEVEL_INFO :普通 log
TL_LOG_LEVEL_DEBUG:调试 log
Log等级设置为 TL_LOG_LEVEL_DEBUG
位置: proj_lib\sig_mesh\app_mesh.h
3.2.1版SDK与上述等级有差别
4.log输出函数:泰凌微官方建议使用LOG_USER_MSG_INFO()函数,调用样例:
LOG_USER_MSG_INFO(0, 0," [mesh] Start from SIG Mesh", 0);
函数位置: sdk\proj_lib\sig_mesh\app_mesh.h