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.

[参考译文] CCS/AM5728:CCS/AM5728:CCS 支持使用 XDS200的 Beagle Bone AI

Guru**** 2030840 points
Other Parts Discussed in Thread: AM5729, AM5728
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/895489/ccs-am5728-ccs-am5728-ccs-support-for-beagle-bone-ai-with-xds200

器件型号:AM5728
主题中讨论的其他器件:AM5729

工具/软件:Code Composer Studio

您好!

我有一个具有 CCS10、BeagleBone AI 和 XDS200 USB 调试 JTAG pod 的 Ubuntu LTS 设置。

希望连接到 AM5729 PRU 以进行开发。  我没有看到 BeagleBone AI 的板级支持、但您在 Sitara 页面上大力推广。

我已经尝试过所有相同的 AM5728/9处理器内核以及 EVM、我的调试器尝试进行连接、但每次都超时。

我运气差了吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    自从我回复了上面链接的线程后、我就能够获得 BeagleBone AI 并对其进行了一些修改、以便连接到外部调试探针。 不幸的是、我从未经历过连接错误、并将审查修改、但鉴于当前的世界形势、我无法访问该错误、因此目前无法继续。

    所有这些都是为了回答您集成工作正在进行中、但在这种情况下、您确实暂时不幸运。

    给您带来的不便、我深表歉意、  

    拉斐尔  

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    感谢你的答复。  我整天都在处理这个问题、是的、连接错误(ICE 选择配置阶段)是一个障碍。

    如果是在调试启动过程的这个阶段之前或之后、我不清楚 xxx_PRU_startup.js 脚本的运行位置。  我当然有用于 BBB 的 AM335脚本、我很确定需要正确才能使 BBAI 处理器 PRU 进入已知的可控状态。  不知道在它停止的阶段发生了什么(冰皮)当然令人沮丧。

    明天我将尝试查看我是否可以理解 js 文件、看看我是否可以对其进行编辑以符合 BBAI 和 AM5279的要求...因为我不熟悉该处理器、这可能是又一个沮丧的日子

    这个链接/教程让我对明天有了一些希望:  http://software-dl.ti.com/public/hpmp/sitara/debug_pru_using_ccs/presentation_html5.html

    谢谢、Jim

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、

    再说一次、我对这种问题感到抱歉。  

    由于 PRU 是一个从内核、需要从 Cortex A15_0 (主内核)进行复位、因此、PRU 连接过程有点复杂。

    如果你从 ICEPICK 中得到一个错误、那么这是任何 JTAG 信号的第一个入口点、因此即使与主内核、通信也不会建立、更不用说与 PRU 了。 (ICEPICK 是一个 JTAG 数据路由器、就像一个通过其端口重定向数据流量的以太网路由器一样)。

    我检查了 BBAI 原理图、除了 cJTAG 20引脚连接器本身、看不到任何必要的东西、但我将尝试从一个电路板中获取数据并在我的家庭实验室中进行修改。 希望我能及时做到这一点。   

    此致、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    我决定使用 BeagleBone Black 开发板来确保我使用的"工具"正常工作、很高兴地说、BBB 开发板在除 JLink 之外的所有仿真器 Pod 都可以正常工作、我猜 Sitara 不支持这种情况、这很好。

    我还注意到、用于 Linux 支持的产品页面上的 Eclipse IDE 链接 CCS10已更改为 CCS9作为首选工具、当我降级为该工具时、情况有所不同、但我仍然无法通过 XDS200与器件通信。  CCS10温度更低、但我每天都要"工作"而不是"温度更低"。

    好的和坏的、我的物理设置已经过验证、但仍然没有 AM527x。

    我还注意到 CCS9支持的处理器列表不包括 AM5279、但它支持 AM5278。  我一直找不到一种方法来添加它、因为我可以使用仿真器进行主内核调试。  我还可以将 ARM gdb 工具作为 weii 与 CCS9一起使用、但最好使用 XDS200、以防万一。

    希望您在这方面取得一些进展、谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、

    我刚刚在这里收到了 BeagleBone AI、但我仍然需要接收 cJTAG 报头。  

    关于您对 BBBlack 所做的测试、您处于正确的轨道上。 至少您将问题与 BBAI/XDS200隔离  

    [引用 user="Jim Rhodes1]]我还注意到、CCS9支持的处理器列表不包括 AM5279、但它支持 AM5278。  [/报价]

    您可以通过转至 Help 菜单-> Check for Updates 来更新 CCS。 AM5729是从版本1.1.9开始的 Sitara 器件支持包的一部分。  

    但是、从纯 JTAG 调试的角度来看、AM5729和 AM5728之间没有真正的区别。  

    我会随时向您通报情况的发展。

    此致、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    感谢您的关注、我已经取得了一些进展、这些问题可能与我在 BBB 上看到的情况有关、而我在第二天获得了 BBB、我可以使用 XDS200成功调试 PRU 代码。

    让 BBB 正常工作的主要障碍是它运行 Linux、甚至是 uBoot、这导致了通过 JTAG 端口连接到任何内核的问题。  我必须卸下 SDCARD、然后在打开设备电源时按住引导按钮。  我还必须使用 bbb+PRU_startup.js 脚本加载并在调试运行时执行、所有这些都让我在 PRU 上进行了一个可靠、可重复的调试会话。

    我现在甚至让 BBAI 连接到仿真器、有时不会出现 ICE_Pick 问题、我不知道这是为什么起作用、或者不起作用。  我也无法让内核停止引导(AI 上没有引导按钮)、因此无论我做什么、当我尝试通过 JTAG 进行连接时、主内核上都会运行代码。  实际上、在启动 POD 后、我获得了 JTAG 树、所有内核的完整列表、但我无法连接到任何内核来尝试通过仿真器运行代码。

    现在、在这个项目上、CCS9在该点死亡、因此我甚至不知道发生了什么。

    底线是 BBB 对我有效、可重复、但我必须防止它启动。  我在 TI 网站上看到了太多的"如何"方法、我们使用 GEL、我们不使用.js、我们可以让处理器启动到 Linux、我们不能让处理器启动到 Linux、只是让整个问题变得很困惑。

    第二个底线是、BBAI 更接近、现在正在识别 JTAG 转向引擎、但我要么使 CCS0崩溃、要么根本不连接。

    我的目标可能永远无法实现: 在 Linux 内核运行时使用 XDS200调试代码。  方法可能是执行我的所有 PRU 代码(对于高度确定性的应用、我需要在 AM5279中全部执行这些代码)、然后使用 RPMsg 将结果发送到主内核、同时使用 gdb 和 CCS9、甚至是 VisualStudio for Windows、 来执行主应用。

    任何帮助、都是帮助、谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    有关获得 AI 的好消息、请告诉我调试是如何进行的。  我已经取得了相当大的进步、PRU 可以运行、并且主核心应用程序正在运行、所有这些都在进行讨论。  因此、至少我将继续。

    我确实在调试模式下获得了 XDS200、但我不得不不允许内核启动。  我没有运行其他代码、我能够单步执行 PRU 代码。

    我的调试方法是 UART、引脚和逻辑分析仪、因此至少我可以完成 PRU 工作。  当然、XDS200是最佳方法。

    目标是能够在内核模式下进行调试、这可能是一种延伸。  让我知道情况如何、谢谢。

    谢谢、Jim

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、

    我很高兴你能向前迈进一点。 我遇到了一些困难、因为我不断收到与 JTAG 连接器(P2)和器件之间的硬件连接相关的错误-233、但我还无法找到交叉线的位置。  

    我希望在尝试连接之前停止引导过程-内核关闭调试子系统并因此切断连接是很常见的。 通常、我们通过重新构建内核并启用一些内核黑客功能来解决这一问题-这与我几年前在以下网址记录的内容类似:

    https://processors.wiki.ti.com/index.php/Linux_Debug_in_CCSv5

    我尝试简单地使用单独的发行版创建一个 micro-SD 卡、发现我的所有大于4GB 的 micro-SD 卡都无法正确写入数据(我需要转到最近的商店并获取一些8GB+卡)。 哦、嗯... 如果不是因为隔离限制、所有这些都将更容易实现、但这就是我的当前状态。 很抱歉没有取得进展。  

    此致、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    好的、我刚刚发现我的全新电路板是修订版 A1、它需要一个修改才能使 JTAG 运行...

    https://github.com/beagleboard/beaglebone-ai/issues/21

    (今天下午将是焊接时间)

    此致、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、

    我最终能够按照上面的链接中所示的步骤进行连接。  

    在我能够正确获得一个工作板之前、必须在程序上纠正几个扭结、因此我将尝试更新上面的基准。  

    我遇到的一个问题是电路板电源(Samsung 手机充电器)与 FTDI 串行电缆和调试探针(都连接到我的笔记本电脑、由其自己的电源供电)之间的接地回路。 在连接串行电缆的特定时刻、调试探针开始无法对电路板上的电源问题进行投诉、串行数据正在通过、但略有乱码(几个字符缺失或错误)。 从其他情况中了解到这一点、我将电源线插入笔记本电脑、一切都再次变得稳定。

    所有这些之后、我能够在 u-boot 提示符下或在运行 Linux 时正确连接到电路板-内核似乎被配置为保持调试子系统完全通电、这是一个好消息。

    我没有尝试连接到 PRU、但是、由于您能够完全连接、因此我的终端也应该是可以的。   

    希望这对您有所帮助、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    太棒了!  我明天要焊接!  谢谢您...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    蓝色导线是否连接到两个焊盘上的电阻器上、您提起该导线、将其安装到一个焊盘上、另一侧连接到蓝色导线?  将其移至 JTAG 端口的串联电阻器?  和相同的电阻器?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、

    在开始脱焊/焊接之前、能否确认您的电路板是修订版 A1或 A2? 如果是 A2、则无需修改。  

    另一个详细信息:您是否能够通过 XDS200调试探针连接到任何内核? 不知怎么说、我给人的印象是、您能够通过停止 u-boot 进行连接。 您能确认吗? 如果是这样、则不需要进行硬件修改、因为没有这些导线会阻止与任何内核的任何连接。 如果您能够连接到一个内核(PRU 或 A15)、则问题出在其他地方。  

    如果所有这些条件均为 false、则需要返工。  

    我遵循 了 GitHub 线程上的用户测试程序所示的方法 、但进行了以下更改。

    按照 XDS 目标连接设计的非缓冲 JTAG 信号终端部分的建议、我将 TCK 信号的22Ω Ω 端接电阻器(R200)移到了靠近仿真接头的位置、同时将 RTCK 的22 (R199)留在尽可能靠近器件的位置。  

    远离 SD 卡连接器(J90)的焊盘是连接到器件引脚的焊盘。 其他两个电极只短接、不使用。  

    此外、我在仿真接头的焊盘之间使用一个小的德士古刀来切断仿真接头的引脚9 (RTCK)和11 (TCK)之间的连接。 由于连接在底层、因此只需进行小切。 小心不要切太深、因为内层可能有其他轨道(我没有验证)。  

    希望这对您有所帮助、

    拉斐尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉斐尔

    我的所有三个板都是 A1。

    我设法使用 BBBlack 测试 XDS200、以消除这种不良情况。  XDS100也在那里工作。  我说 AI 没有问题是不正确的、从未连接过。

    所有这些都完成了、我一直在返工、我们在这里有一个很棒的实验。  我会告诉您我发现的内容、可能直到周末。 我现在正在尝试与 PinMux 输出进行竞争、以创建.dts 文件、从而使我的所有引脚正常工作。  我必须在本周结束。

    再次感谢后续行动,这很重要。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢、我也更新了 Github 主题、因此它对未来开发人员更具吸引力。  

    祝你好运。  

    谢谢、

    拉斐尔