原帖 | Jack | 2024-11-23 12:35 | 👍0 | 阅读约1
Trace调试和DAP调试
Trace用的是ETM内核单元 (通常为Trace data接口TRACEDx等)
DAP调试用的是DAP内核单元(通常为Jlink,SWD接口)
2,Trace调试与单步调试的区别
1,Trace调试类型于跟踪,在单片机运行时使用的所有功能及使用方法及步骤进行上传,从而得知工作状态,而单步调试可以实时查看工作状态,出现问题立刻显示
2,单步调试只能跟踪一条执行路径,Trace可以跟踪多条路经的工作状态
3,单步调试在单步执行时,如果其他执行路径被触发,则会导致其他执行路径无法被捕捉,其执行速度超过跟踪路径的运行速度,使其出现未知错误的概率增加
4,单步调试会占用AHB总线,会降低系统整体的运行速度
3,Corex-M3 调试部分
1,调试功能分为两类:侵入式调试,非侵入式调试
2,侵入式调试属于传统调试,可能导致CPU的运行效率降低,程序的运行速度降低,可能导致程序的运行顺序发生改变,导致出现未知的错误
3,侵入式调试是通过调试器,利用DAP总线来控制如CM3中的AHB-AP,进而访问如CPU,NVIC或者存储器来控制运行的速度来控制运行
4,侵入式调试适用于对某一个功能进行调整,由于其干预CPU的运行速度为代价
5,非侵入式调试在调试时,无法对程序的运行做出干预,使其在出现错误后,无法立刻对其进行暂停
6,非侵入式调试是通过串行线协议转为DAP总线接口协议,再控制DAP进行调试
7,非侵入式调试适用于不干扰原来运行速度的调试,如已完成的程序进行综合性的调整,使其运行顺序更加合理,提高程序运行时的准确性
相关笔记