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.

[参考译文] TM4C1294KCPDT:调试菊花链双 Tiva C

Guru**** 2524550 points
Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1000344/tm4c1294kcpdt-debugging-daisy-chained-dual-tiva-c

器件型号:TM4C1294KCPDT
主题中讨论的其他器件:UNIFLASHTM4C123

您好!

在我的项目中、我有2个 TM4C129 MCU 和菊花链 JTAG 连接。

所以我只是尝试创建一个具有空 main()函数的项目并对其进行调试。 当我尝试调试第二个 MCU 时、遇到错误:

CORTEX_M4_0: GEL Output: 
Memory Map Initialization Complete
CORTEX_M4_1: GEL Output: 
Memory Map Initialization Complete
CORTEX_M4_1: Trouble Setting Breakpoint with the Action "Terminate Program Execution" at 0x244: (Error -1066 @ 0x244) Unable to set/clear requested breakpoint. Verify that the breakpoint address is in valid memory. (Emulation package 9.3.0.00042) 
CORTEX_M4_1: Trouble Setting Breakpoint with the Action "Finish Auto Run" at 0x248: (Error -1066 @ 0x248) Unable to set/clear requested breakpoint. Verify that the breakpoint address is in valid memory. (Emulation package 9.3.0.00042) 
CORTEX_M4_1: Trouble Removing Breakpoint with the Action "Finish Auto Run" at 0x248: (Error -2044 @ 0x248) Internal error: Requested breakpoint does not exist. Restart the application. If error persists, please report the error. (Emulation package 9.3.0.00042) 

第一个 MCU 没有此类错误。 代码似乎被加载到第二个 MCU 正常、如果我使用 F5键对其进行调试、我可以转到 main()、但 F6键产生错误。 我的目标配置 为:

及其来源:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0">
<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Debug Probe_0">
        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Debug Probe_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Debug Probe_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Debug Probe_0">
            <instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
            <platform XML_version="1.2" id="platform_0">
                <instance XML_version="1.2" desc="Tiva TM4C1294KCPDT_0" href="devices/tm4c1294kcpdt.xml" id="Tiva TM4C1294KCPDT_0" xml="tm4c1294kcpdt.xml" xmlpath="devices"/>
            <instance XML_version="1.2" desc="Tiva TM4C1294KCPDT_1" href="devices/tm4c1294kcpdt.xml" id="Tiva TM4C1294KCPDT_1" xml="tm4c1294kcpdt.xml" xmlpath="devices"/>
                <device HW_revision="1" XML_version="1.2" description="" id="Tiva TM4C1294KCPDT_1" partnum="TM4C1294KCPDT" simulation="no">
                    <router HW_revision="1.0" XML_version="1.2" desc="CS_DAP_1" description="CS_DAP Router" id="CS_DAP_0" isa="CS_DAP">
                        <subpath desc="subpath_1" id="subpath_0">
                            <cpu HW_revision="1.0" XML_version="1.2" desc="CORTEX_M4_1" description="Cortex M4 CPU" deviceSim="false" id="CORTEX_M4_0" isa="CORTEX_M4">
                                <property Type="numericfield" Value="0x0" id="TraceDeviceId"/>
                            </cpu>
                        </subpath>
                    <property Type="numericfield" Value="0x0" id="DAP TAP ID"/>
                    </router>
                </device>
            </platform>
        </connection>
    </configuration>
</configurations>

有什么建议吗?

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

    更新了:将第一个 MCU 设置为旁路模式不起作用。

    此外、我还使用 UniFlash Classic 成功地使用 MAC 地址对爬虫程序 MCU 进行了编程。

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

    我没有在单个 JTAG 链上使用两个 TM4C129器件的硬件、但当我为 XDS200构建配置文件时、我会得到:

    e2e.ti.com/.../XDS200DualTM4C129.ccxml

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

    我的情况与您看到的相同。

    但第二个内核显示错误。

    无论如何、使用2个 LaunchPad 很容易重现配置、如下所示: https://e2e.ti.com/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/620529/ccs-tm4c123gh6pm-jtag-daisy-chain-debugging-using-ek-tm4c123gxl-icdi-interface

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

    我正在将您的线程转移到工具组。

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

    您好 Oleg、

    我需要尝试复制您的环境、看看我是否可以使其正常工作。 可能需要一天或两天的时间、因为我需要进入办公室寻找必要的硬件。  

    两个问题:

    1.您使用的 CCS 版本是什么?

    2.您正在使用什么主机操作系统?

    谢谢

    Ki

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

    您好!

    感谢您的回答。

    1.使用 CCS 9.3和10.2、XDS100v2和 XDS100v3进行了测试、结果相同。

    2. Windows 10.

    此外、搜索错误消息我发现了非常相似的情况、很遗憾、没有任何建议的解决方案: 案例1 和 案例2、可能会有所帮助。 正如他们所说、XDS100或 xds200以及 CCS v6至 v10都可以重现问题、我的两种情况都是 TM4C129x 器件。

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

    谢谢。 我将尝试设置类似的环境。 我今天无法进入办公室,但我计划明天去。

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

    我能够保护两个1294 LaunchPad、并且正在设置过程中。 我会随时向您发布我的进度。 感谢您的耐心等待。

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

    早上好! 有新消息吗?

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

    还没有。 很抱歉耽误你的时间。 我将在这个周末尝试设置一些东西

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

    我有两个 TM4C1294XL LaunchPad、尝试以菊花链方式连接它们、但未成功。 我从未尝试过这些 LaunchPad、因此我可能会在这里遗漏一些东西。 我将需要器件专家提供一些帮助...

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

    在我查看 TM4C1294 lanuchpad 文档时、我看到有一个与 TM4C123 MCU 连接的 ICDI 接口。 因此、您需要取消安装将 ICDI 连接到 TM4C1294 JTAG 的跳线、并为外部 JTAG 安装连接器。

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

    这个问题正在通过私下的 e2e 讨论进行讨论

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

    有关此主题的其他内容、请参阅以下文章以了解更多详细信息:

    https://e2e.ti.com/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1003595/tm4c1294kcpdt-debugging-daisy-chained-dual-tm4c1294---emulation-pack-bug/3716203#3716203

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

    您好 Oleg、

    Windows 可以启动多个 CCS 调试会话、每个会话位于受保护的存储器空间中。 为什么不 启动 两个 CCS 调试器来并排观看两个 MCU?  

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

    您好 Oleg、

    [引用 userid="48581" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1000344/tm4c1294kcpdt-debugging-daisy-chained-dual-tiva-c/3716475 #3716475]Windows 可以启动多个 CCS 调试会话、每个会话位于受保护的存储器空间中。 为什么不 启动 两个 CCS 调试器来并排观看两个 MCU?

    您提到您以菊花链形式连接了两个 TM4C129 MCU。 这是 一个定制电路板、两个 MCU 位于同一扫描链上的同一电路板上、还是以菊花链形式连接两个 TM4C1294 LaunchPad?

    如果是后者、则 GI 建议的变通办法似乎是可行的变通办法。

    谢谢

    Ki

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

    这是一个定制电路板、两个 MCU 位于同一扫描链上的同一电路板上。 这样做是为了简化电路板的后续生产、因为在生产设施中、它们应该只使用一个连接器来刷写两个 MCU。 当然、对于开发、我可以制作另一个具有2个 JTAG 连接器的板、但这是额外的费用和时间。

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

    Oleg、感谢您的确认。 我也很怀疑。 我将确保工程师知道此错误的优先级。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="140078" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1000344/tm4c1294kcpdt-debugging-daisy-chained-dual-tiva-c/3717811 #3717811"]当然、我可以制作另一个具有2个 JTAG 连接器的板、但这是额外的费用和时间。

    为了简单起见、如果两个固件都不同、则在两个 MCU 上放置 JTAG 接头焊盘可能是值得的。 那么、需要考虑 DAP 解锁、它是否也有相同的困难?   

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

    Oleg、

    一个更新:问题似乎与调试器中的 CTOOLS 组件有关。 您可以尝试禁用它。 要执行此操作、请转到 \ccs\ccs_base\emulation\analysis\bin 并重命名 CTOOLS.dll。 这将禁用 CTool。

    当我执行上述操作时、我也可以为第二个 CPU 设置硬件断点。 但是、对于每个单步执行、它似乎都会导致每次遇到断点或出现以下错误:

    Cortex_M4_1:读取寄存器时出现问题 SP:(错误-2030 @ 0xF)尝试访问未知或无效的寄存器。 确认寄存器有效且可访问、然后重试此操作。 (仿真包9.3.0.00058)  

    个内核都将发生这种情况。 不知道为什么读取 SP 时出现问题、因为我可以通过"Registers"视图访问它。 在任何情况下、它似乎不会影响调试功能(尽管常量消息可能会令人厌烦)。

    在我们正确解决 CTOOLS 问题之前、您可以使用上述解决方法。

    谢谢

    Ki

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

    Ki 您对这些问题的直观处理方法总是让我感到惊讶。 继续使用 CCS 进行出色的工作、我们都非常感谢您的努力  

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

    另一个注意事项:刚刚探讨过基于 Linux 的 CCS、同样的问题。

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

    此变通办法有效、但 CIO 不起作用。 不是大问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="140078" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1000344/tm4c1294kcpdt-debugging-daisy-chained-dual-tiva-c/3722014 #3722014)]此变通办法有效,但 CIO 不能。 不是大问题。

    是的、这似乎是此变通办法的另一个限制。