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.

[参考译文] LAUNCHXL-F28379D:F28p65 调试器导致的 Universal_Servo_Drive 板转换问题

Guru**** 2447250 points
Other Parts Discussed in Thread: SYSCONFIG, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1524149/launchxl-f28379d-universal_servo_drive-board-conversion-from-f28p65-debugger-issues

器件型号:LAUNCHXL-F28379D
Thread 中讨论的其他器件:SysConfigC2000WARE

工具/软件:


我使用的是来自电机控制 SDK 的 universal_servo_drive。 我使用一键迁移来将代码从 Launchpad F28p65 转换为 Launchpad F28379D、并调整 SysConfig 和链接器文件以进行相应匹配。 工程按预期构建、但在调试时、它会卡在第 68 行和第 70 行之间、这是 sysctl.c 文件中的两行注释。 我将运行调试器、然后暂停、再次运行、暂停... 它会在这两条线之间不断反弹。

下一行代码调用 SysCtl_delay 汇编器、附件的屏幕截图中对此进行了描述。 我担心编译器优化导致了此处的问题、因此它们现在设置为关闭、我仍然卡在这两行之间。

在 main.c 文件中、代码能够到达我在 Device_Init () 设置的断点、但不能到达 Board_Init ()。

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

    您好:

    请允许我再过一天来审查这个问题。

    此致、

    Allison

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

    尊敬的 Kylie:

    您能否逐行穿过/进入项目并查看调试器停止的位置、或者是否遇到问题? 是不是还在同一个地方被卡住了?

    您能否仔细检查应用于器件初始化的代码? 这将因器件而异、因此如果配置未正确迁移、这可能会导致问题、尤其是在 Sysctrl 设置中。

    此致、

    Allison

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

    尊敬的 Allison:  

    步进和步进两条线会在第 68 和 70 行之间连续产生相同的循环。  

    我在 SysConfig 编辑器中附加了 SYSCTL 页面的屏幕截图。  

    使用 o 范围我能够验证程序运行时时时钟是否会产生正弦波、但我担心 SYSCTL 中时钟的配置方式存在问题。  

    此外、为了解决潜在的时钟问题、我将 CPU1 SYSCLK 中的 OSCCLKSRCSEL 从 INTOSC1 切换到 X1_XTAL、这导致程序更快地在代码中停止、并且即使在启动和停止调试器并进入/单步执行时也卡在同一空白行中。  

    您是否有关于我应该在器件 INIT 中具体调查的位置或内容的建议? 乐于提供任何必要的服务。  

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

    尊敬的 Kylie:  

    您能否附上您的项目? 也许我可以看看我是否看到了同样的行为或明显的问题。

    此致、

    Allison

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

    e2e.ti.com/.../universal_5F00_servo_5F00_drive_5F00_f28p65x_5F00_convertedto_5F00_f28379D.zip

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

    尊敬的 Kylie:

    当我尝试加载工程并逐步完成时、我被困在 Sysctrl 设置中、这让我认为工程正在尝试配置错误的系统控制/时钟相关设置。 请注意、这与 SysConfig 无关、而是与工程中引用和使用的 driverlib 源文件相关。 我看到导入的 SysCtrl.c 文件的路径仍指向 F28P65x、而不是 F2837xD。 这是我看到的:

    C:\ti\c2000\C2000Ware_5_04_00_00\driverlib\f28p65x\driverlib\sysctl.c 如果您的设置类似、您可能需要在 F28P65x driverlib 源中拉取。 您能否仔细检查工程设置/路径?

    此致、

    Allison

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

    感谢您的帮助! 我替换了 src_device 中的所有其他文件、但没有替换 driverlib.lib 文件。 为此、我需要转到 C:\ti\c2000\C2000Ware_5_04_00_00\driverlib\f2837xd\driverlib\ccs\Release。  

    我通过查看此处确认了我使用的是 eabi 输出格式。  

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

    尊敬的 Kylie:

    很高兴您能解决这个问题! 如果出现其他问题、请尽管创建新主题。

    此致、

    Allison