T5芯片出现异常时,仅打印异常时的PC和LR,无法继续回溯更上级的函数调用,请问是否有类似backtrace的机制?如有,请问怎么使用?
【T5异常问题定位】请教异常时怎么打印出完整的调用栈
Re: 【T5异常问题定位】请教异常时怎么打印出完整的调用栈
您好,可以在文件:t5_os/projects/tuya_app/config/bk7258/config 和 t5_os/projects/tuya_app/config/bk7258_cp1/config 中修改/新增配置项:CONFIG_DUMP_ENABLE=n 改为 CONFIG_DUMP_ENABLE=y
改动后,如果发生异常,可以输出相关trace日志,这个选项会通过串口输出backtrace相关内容,同时也会把任务栈信息输出,log打印时间比较长,release版本不建议打开
努力写bug……
Re: 【T5异常问题定位】请教异常时怎么打印出完整的调用栈
这个方法对我来说,完全用不起来:
1、打印的信息太多太长了,耗时长,查找起来非常麻烦;
2、手工去查找进行栈回溯,效率那是相当低下,而且容易出错,几乎没有成功过;
期望:官方能将CmBacktrace移植进去,适配一下T5芯片,从而异常时,只需要打印寄存器及栈回溯信息,就能直接找到上层代码出错的地方,同时无需打印一大堆无用信息,也不用手工去栈回溯。