(二)nrf52832如何debug

1.在上一篇的基础上打开工程

2.将此宏定义改为#define DEVICE_NAME                     "Nordic_Template_xxxxxxxxxxxxxxxxxxxxx",字符串长度超过31就行

3.首先打开MDK魔术棒,C/C++选项,定义宏DEBU查看打印日志,可迅速定位错误发生在main.c的211行,跟踪可知是设置名称出错

                                 (二)nrf52832如何debug_第1张图片

4.试试单步debug,首先打开MDK魔术棒,C/C++选项,定义宏DEBUG,否则程序出错就直接复位了,无法跟踪(具体可查看app_error_fault_handler函数),找到app_error_save_and_stop函数,把m_error_data添加到变量查看窗口,可以看到程序出错的错误码,行数,所在文件,这个和打印日志的结果一样

5.啰嗦一句,nrf52832单步仿真有时候不太好使,可能会造成程序混乱,最好一次打一个断点,然后去分析(猜测可能协议栈强实时性导致的),当然也可以通过打log去调试代码

你可能感兴趣的:(蓝牙BLE)