我正在尝试为从 DSS 脚本执行的代码生成代码覆盖率报告。 我遇到以下错误:
警告:C28xx:自动运行:无法设置目标未作为断点运行:启用此函数时出错:无法使用现有的 AET 资源完成此任务。
我需要禁用其他硬件断点才能使代码覆盖正常工作。 我取消选中了一些提到需要断点的选项、包括启用 CIO 函数(尽管在进一步阅读代码覆盖率文档时可能需要断点吗?) 我已经发布了自动运行和程序加载选项的屏幕截图、我是否错过了什么? 我从 DSS 中删除内容的事实是否与之相关?
感谢您的帮助!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我正在尝试为从 DSS 脚本执行的代码生成代码覆盖率报告。 我遇到以下错误:
警告:C28xx:自动运行:无法设置目标未作为断点运行:启用此函数时出错:无法使用现有的 AET 资源完成此任务。
我需要禁用其他硬件断点才能使代码覆盖正常工作。 我取消选中了一些提到需要断点的选项、包括启用 CIO 函数(尽管在进一步阅读代码覆盖率文档时可能需要断点吗?) 我已经发布了自动运行和程序加载选项的屏幕截图、我是否错过了什么? 我从 DSS 中删除内容的事实是否与之相关?
感谢您的帮助!
您好!
[引用 userid="485016" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1035201/tms320f28335-code-coverage-on-c28x-target "]我从 DSS 中删除内容与之有任何关系吗?是的。
从系统控制台运行 DSS 时、通过 CCS GUI 修改调试设置不会产生任何影响。 您需要确保使用 DSS API 从相同的 DSS 脚本修改这些设置。
https://software-dl.ti.com/ccs/esd/documents/users_guide/sdto_dss_handbook.html#debugger-properties
谢谢
Ki
谢谢 Ki、我添加了以下代码行、错误消息消失了。 很遗憾、通过 DSS 运行脚本后、我仍然看不到 pprofout.pdat 文件。 是否还有其他步骤我丢失了?
session.options.setBoolean("HaltOnConnect", false)
session.options.setBoolean("AutoRunToLabelOnRestart", false)
session.options.setBoolean("AutoRunToLabelOnReset", false)感谢 Ki,这确实是发生的事情。 奇怪的是、我无法让我的节目退出。 相反、我调用 ti stop profile 函数并在虚假函数 testExit 处放置断点、以将程序的控制权返回到 DSS。 还有其他一些奇怪的行为,但我还是能越过它。 现在一切都很好,谢谢!
void main(void)
{
uint16_t i;
for(i=0; i < MAX_TESTS; i++)
{
runTest();
}
_TI_stop_pprof_collection();
testExit();
}我遇到了另一个问题。 当我尝试使用此文档 https://software-dl.ti.com/ccs/esd/documents/application_notes/appnote-code_coverage_compiler.html 中的分析步骤时 、我不会创建任何.csv 文件。
我已确认每次运行 DSS 脚本时都会创建.pprofout.pdat 文件。 在分析配置下进行编译时、确实会生成.pprofout.prf 文件。
我想知道、我运行代码的方式是否会导致问题、因为我的代码的行为与正常程序略有不同。 我创建了执行指针地址中存储的函数的单元测试框架。 使用 DSS 运行具有断点的循环、每次通过 DSS 向电路板写入不同的函数和相关参数、然后运行直至其循环、从电路板中获取结果、写入新函数和参数冲洗并重复...
我必须做的一件事是禁用条件链接、否则链接器不认为正在从主代码调用任何内容。 那么、我想知道我执行代码的方式是否会对生成的分析产生影响? 我想至少应该为 main 创建一个.csv 文件。 我可以通过检查电路板上的存储器和寄存器是如何变化的来确认我所有其他文件中的代码是否确实得到了执行。
有什么想法吗?