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/TMDX570LC43HDK:CAN#39;t 在 CCS 上构建 lwIP 演示

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/572562/ccs-tmdx570lc43hdk-can-t-build-lwip-demo-on-ccs

器件型号:TMDX570LC43HDK
主题中讨论的其他器件:HALCOGENDP83640

工具/软件:Code Composer Studio

大家好!

我最近有一个用于 TMS570LC43X 处理器的评估板、我一直在尝试构建 这里的 lwIP 演示。

我所做的是:

-使用项目/导入项目在 CCS 上导入项目、然后查找

C:\ti\Hercules \HALCoGen EMAC 驱动程序、带 lwIP 演示\v00.03.00\TMS570LC43x\build-TMS570LC43x

然后、在点击 Debug 按钮后、编译开始、但在到达以下消息时编译会卡住:

'构建目标:build-TMS570LC43x.out'
'调用:ARM 链接器'
"c:/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.0.LTS/bin/armcl -mv7R4 --code_state=32 --float_support=VFPv3D16 --abi=eabi -g --define=_TMS570LC43x_--display_error_number --diag_warning=225 --warn_wrap=off --enum_type=packed -z -m"-ment-display_error=-linkg-line-ram_linkg-cn-ram_info-mode-ram_ram_info-mode-cn-cn-cn-cn-cn-tms570live_display-ram_infot-ram_info-mode-ram_info-mode-ment-display-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-cn-/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.0.LTS/include /ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.0.LTS/lib be32 -o "Build-TMS570LC43x.out""./HALCoGen-TMS570LC43x/SOURCE /HL_EMAC.obj "./HALCoGen-TMS570LC43x/SOURCE /ESM_EC./HALCoGen 430/HLCM.SOURCE "/H/CLCM570CoGen ""/SOURCE "/HLCMP430/H433"/H/CLCMP430/HP.HL.SOURCE "/HL.HL.HL.HL.HL.430/HL/HL.SOURCE /ti/Hercules/HALCoGen /example/hdk/src/lwip_main.obj "  

我知道它与链接器有关... 有什么想法吗?

我的设置:

  • Windows 10 x64
  • CCS 版本:7.0.0.00043

谢谢!!

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

    嗯、我看不到错误消息。

    是否将运行时库选择为“auto”?   编译器团队通过不提供预构建的运行时库来减小编译器的下载大小[在给定所有 ARM 变体的情况下有很多库]。

    因此、较新的 CCS 具有一个功能、在该功能中、如果您单击项目的"Properties"、 "General"

    节点  有一个用于运行时支持库的"高级设置"。

    尝试制作此" ”而不是像我在下面的屏幕截图中所说的那样使用一些硬编码名称:

    如果该库 不存在、则自动将导致 CCS 编译该库(调用 mklib 工具)。
    它会选择库变体以匹配您所使用的器件。   因此、请确保在同一窗口的"器件"组中选择与您的电路板相匹配的正确"型号"。

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

    你好,Anthony!

    感谢您的快速回复。 解决了我的问题。 我还必须将"Connection to Texas Instruments XDS110 USB Debug Probe and Compiler version (连接到德州仪器 XDS110 USB 调试探针和编译器版本)"字段更改为"TI v16.9.0.LTS (TI v16.9.0.LTS)"。

    我现在可以运行演示、但它会卡在线上:

    初始化以太网(DHCP)
           调试-获取 PHY ID...

    打印了许多点后、它表示无法初始化物理接口。 我使用跳线将其连接到我的笔记本电脑。 我很惊讶、因为我只看到一个稳定的绿色 LED 亮起(黄色 LED 永远不闪烁)。

    这是因为它应该连接到路由器吗?

    此致、再次感谢您!!

    Pablo

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

    如果它无法获取 phy ID、则可能是 GIO Init 未设置或未调用。
    因此、请再次仔细检查 wiki 上的步骤。 我相信您刚刚错过了一个。

    上行端口的电缆在 PHY ID 步骤中无关紧要。 这只是一个
    两者之间的本地管理接口连接(类似于 I2C 连接)
    芯片。 即使您没有电缆、它也能正常工作。

    但我认为如果 PHY 处于复位或关断状态、它将不起作用。

    此外、请确保使用 LaunchPad 的 PHY ID 更新了软件。
    它是一个与 HDK 不同的 ID #、HDK 是示例的基础。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哦、我看到、这是在设计时考虑到了 HDK 而不是 launchpad 板。
    初始化期间不调用 GIO。 我该如何称呼它? 是否有地方可以读取连接了哪些引脚? 我没有找到 LaunchPad 板的原理图。

    当您谈论 PHY ID 时、您是否谈到 PHY_ADDR、对吧? 我如何知道应该使用哪一个?

    再次感谢 Anthony! 你是最好的!!

    编辑:很抱歉给您带来这么多初学者的问题。 我以前没有看到过此页面:  

    我应该从那里开始!!

    再次感谢!!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为 GIO 初始化被埋在由 main()调用的 lwip 'main'函数内。

    您找到了正确的页面--其中的说明应该是修改 LuaunchPad 的 HDK 示例所需的全部内容。

    祝您好运、感谢您的称赞!

    -Anthony
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很不错! 再次感谢 Anthony。 我刚刚执行了所有步骤、它将显示静态网站。
    我想在我的项目中使用 UDP、因此我想我将尝试了解 lwIP 是如何实现它的。
    我还有一个很难回答的问题。 在播放项目一段时间后、我重命名了它并尝试再次运行调试。
    但是、我一直收到以下错误消息:

    德州仪器 XDS110 USB Debug Probe_0/CortexR5:加载程序前必须连接目标方。

    电缆已连接、我可以将其他程序刷写到电路板上。
    问题出在哪呢?

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

    嗯、可能是您已断开与 Core 的连接。 通过这一点、我的意思是不使用物理电缆、而是逻辑上。
    无论仿真器是否控制芯片、还是自由运行、都是如此。

    在"Debug"窗格中、如果您在 cortex 上看到 X、则它将断开连接。 您可以右键单击它并"连接"。

    如果由于调试而导致错误、则可能没有选中调试器设置。
    在"Auto Run and Launch Options"项目上查看"Project Properties"、"Debug"节点。

    有一个"Connect to the target on debugger starting"复选框。 也许您不会对其进行检查。