工具/软件:
您好 Champ、
我要找我的客户。
我们知道我们应该使用 编译器内在函数 MDEBUGSTOP 作为 CLA 断点。
但是、 为方便在 CLA 中进行调试、客户倾向于添加软件或硬件断点。
它以任一方式(软件/硬件断点)进行测试、CLA 代码每次都很难在断点处停止。 大多数时候不会在断点处停下来。
该线程中清楚地说明了软件断点可能消失。 我很擅长这方面。
但是、正如线程所建议的、我们按照 下面的代码片段使用硬件断点。 我们仍然没有看到代码在设置硬件断点的位置停止。
(1)。 专家是否会尽量解释为什么 CLA 代码不会在硬件断点处停止? 在"Breakpoints"窗口中、H/W BP 确实被启用。
线程末尾列出的步骤(GEL 文件的 STH)也是必须执行的吗? 不仅使用硬件断点、
(2)。 我们还发现、并非每行代码都能够在 CLA 中设置断点(硬件/软件)、尤其是不允许配置外设寄存器的行。 但是、 CLA 可以访问外设寄存器。
例如、第86行和第91行不允许设置断点。 双击要在其中设置断点的行、该断点不存在。 但是、第69行是"Allow"(允许)、存在硬件断点。
我们试图澄清它无法在 CLA 中的任何位置设置硬件断点的原因。 我们在 CPU 调试中不会遇到这样的问题。
专家会尝试解释这一点吗? 客户和我对根本案例很好奇。
谢谢。此致、
Johnny