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.
工具/软件:Code Composer Studio
CCS 8.2.0、AM65xx IDK
当我使用 CCS 连接到 DAP (CS_DAP_0)时、我看到默认情况下、它会出现在 APB_View 中、并且我无法在各种地址看到我正在查找的数据。 切换到 System_View 可解决此问题。 我正在编写一个脚本、在其中连接到 CS_DAP_0并希望读取这些相同的地址、但我看不到如何从 DSS 中以编程方式选择相同的 System_View。
Brad、您好!
[引用 user="Brad Griffies"]当我使用 CCS 连接到 DAP (CS_DAP_0)时,我看到它默认出现在 APB_View 中
您是否参考了"Memory Browser"视图? 当我为 DAP 打开它时、它似乎始终默认为 System 视图。 但我使用的是不同的目标(Vayu)
[引用用户="Brad Griffies"]。 我正在编写一个脚本、在其中连接到 CS_DAP_0并希望读取这些相同的地址、但我看不到如何从 DSS 中以编程方式选择相同的 System_View。
我正在浏览 API 文档、但看不到在不同模式之间切换的方法。 我会不断挖掘并随时为您发布信息
谢谢
Ki
APB 视图到底是什么? 我甚至找不到首字母缩略词的含义。 我可以理解为什么 ARM 内核有两种不同的视图、即我假设有不同的选项可能会考虑高速缓存和/或 MMU。 但是、对于 DAP、我只需要一个视图。
顺便说一下、问题的另一种解决方案可能是有方法将我的 CCXML 文件设置为默认为 DAP 的 System_View、或者在某个位置有某种类型的 CCS 首选项来禁用 DAP 的 APB_View。 我们可以通过很多方法来解决这一问题。 DSS API 是我们想到的第一件事、但我愿意接受其他想法。 最终、我的目标是使用 DAP 读取寄存器位置列表。
我忘记了提到、我还确认了 APB_VIEW 似乎是 AM65xx 上 DAP 的默认设置。 例如、我执行了以下快速测试:
[引用 user="Brad Griffies"> APB 视图到底是什么? 我甚至找不到首字母缩略词的含义。 我可以理解为什么 ARM 内核有两种不同的视图、即我假设有不同的选项可能会考虑高速缓存和/或 MMU。 但是、对于 DAP、我只希望看到单个视图。
我也不确定。 我在深入研究 ARM 文档并发现:
"外部托管的调试代理和片上调试代理(例如调试监视器)都需要访问调试组件。 在 CoreSight 内、这些调试组件在一个专用总线上、即调试 APB 上提供。 这可确保系统存储器空间和调试存储器空间之间的清晰分离。 Cortex-M 处理器是一个例外、其中共享 AHB 互连支持系统存储器和调试访问、这是一种面积缩减的折衷方案。"
这似乎有点解释
[引用 user="Brad Griffies"]最终我的目标是使用 DAP读取寄存器位置列表
您是否尝试了 DSS ReadRegister API?
[引用 USER="Ki-Soo Lee">如果我不得不猜测、我怀疑您可以指定 APB_View 和 System_View 映射、类似于在使用 DSS 存储器 API 时指定存储器页面(Memory.Page)。 我需要确认这一点。
Ki --你是对的! 谢谢。 不是很直观、但设置 Page=2似乎对应于使用 System_View、即我在执行读取时返回预期结果。
在我的脚本中、我做了这一简单的更改、一切都开始为我工作:
已损坏:
值= debugSessionDAP.memory.readWord (0、CTT_register[i]、false);
工作:
值= debugSessionDAP.memory.readWord (2、CTT_register[i]、false);
[引用用户="Brad Griffies"]不是完全直观
是的、当然不是。 我认为这应该记录在某个位置... 但在哪里呢? 从 DAP 访问系统内存是否是常见的问题? 我认为更好的更改是翻转它、以便 System_View 改为 PAGE 0 (默认值)。 我不仅怀疑这是更常见的用例、还会与其他将 System_View 作为默认值的器件保持一致。
[引用 user="Ki-Soo Lee"]正在从 DAP 访问系统内存,这是一种常见的操作
我通常喜欢 DAP、因为您可以低调地查看存储器(即无需停止 ARM)。 它在基于 ARM 的器件中特别方便、因此您不必担心 MMU。 关于 Sitara 器件上的调试问题、我主要使用 DAP 在基于 Linux 的系统中进行低级调试。 RTOS 用户可能已经在使用 JTAG 与 ARM 通信、因此不太常见。
[引用 USER="Ki-Soo Lee">我认为更好的更改是将其翻转、以便 System_View 改为第0页(默认)。 [/报价]
对于任何新器件、是的、将 System_view 设置为默认值会非常有意义。 如果您更改 AM65xx 上的行为、您会使我的操作更加困难、因为我需要向脚本添加一些额外的智能功能、以确定是使用 PAGE 0 (例如、对于较新的 CCS 版本)还是使用 PAGE 2 (对于较旧版本)。 我以前做过这种事情、所以这不会是世界的尽头。
做出这种改变可能会避免很多尝试使用 DAP 的人提出的问题、并会混淆他们为什么看不到内存。 因此、让它单独或更改它对我来说是好的。 在文档方面、嗯、希望这个主题是人们在遇到问题时可以找到的内容。 我怀疑只有少数人使用 DAP、更小的一小部分是为 DAP 编写脚本。 因此、这可能不是一个需要解决的紧迫问题(尽管我感谢您帮助我解决了这个问题!)。