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.

[参考译文] TMS320F2800135:SysConfig 调试错误

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1489688/tms320f2800135-sysconfig-debug-error

器件型号:TMS320F2800135
主题中讨论的其他器件:SysConfigC2000WARE

工具与软件:

(运行135且使用135 syscfg 文件时的寄存器窗口屏幕截图)

(运行135且使用135 syscfg 文件时的"Expressions"窗口屏幕截图)

(在运行39C 和使用39C syscfg 文件时、其值保持变化的表达式窗口)

(运行39C 且使用39C syscfg 文件时的寄存器窗口屏幕截图)

我为两种不同的 IC 创建了两个不同的 syscfg 文件、39C IC 和135 IC。 以及他们的链接器命令文件以及我根据要求排除或包含的文件、在39C IC 中运行代码时运行良好、并显示 EPWM 和 ADC 输出、但当我将其从39C IC 转移到135 IC 时、即使不产生任何构建错误、也不会显示任何输出、而且当我尝试在空项目中为135 IC 运行相同的项目时、 然后它可以正常工作、请帮助我解决这个问题。 在寄存器窗口中、还可以清楚地看到、在135 IC 的情况下、不会发生 SOC 触发、不仅 ePWM 也不在135 IC 下工作、EPWM 也不 工作或 GPIO 闪烁、甚至主函数都没有被编译、因为其中没有函数在运行、无论是来自 syscfg 的 board_init 还是其他任何东西。 所以,我应该做什么来解决这个问题。


这是针对39°C IC 的情况、因为我已经给出正弦波作为计数器比较值、TBCTR 值会连续变化、但在135 IC 的情况下也不会发生这种情况。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Devesh:

    Unknown 说:
    显示了 ePWM 和 ADC 输出、但当我将其从39°C IC 转移到135°C IC 时、它没有显示任何输出、即使它没有给出任何构建错误、而且当我尝试在135 IC 的空项目中运行同一个项目时、它能正常工作、请帮我解决这个问题。

    当转移到135 IC 时,当您加载程序并单步执行代码时,它是否会越过 board_init ()和 device_init ()?   

    如果是、您是否可以在135 IC 和39 IC 之间差异 PWM 和 ADC 配置? 您可以通过右键点击寄存器视图并导出寄存器值来导出寄存器值。

    如果它们相同、您能否在 SysConfig 中仔细检查是否正确选择了 ADC 输入引脚?

    此致!

    Ryan Ma

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

    不,代码不会通过 board_init ()过去,因为如果它已经过去了,那么至少我可以看到通过 ePWM 触发的 ADC 通过在寄存器窗口中看到 ADCSOC7CTL ,但它都是零,而 trigsel 应该是101 ,这表明 ePWM1用于触发,类似的 CHSEL 应该有值00001, 但该函数未生成、表明微控制器未读取该函数。

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

    尊敬的 Devesh:

    您是否知道设备在 board_init()的哪个位置出现错误?  

    此致!

    Ryan Ma

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

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

    尊敬的 Devesh:

    请尝试单步执行代码以查看程序在 board_init ()中发生故障的位置。 提供了 CCS 视图的屏幕截图、以便我进一步帮助调试。

    此致!

    Ryan Ma

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

    不可以、实际上、在从一个传输到另一个 IC 时、即使是器件初始化也没有发生、我刚刚在 main 函数中的 device_init ()语句之后引入断点、该断点未被代码识别、因此寄存器中不会显示任何数据、并且微控制器中也没有 GPIO 闪烁、因为这些数据没有被馈送到微控制器。 出现这种情况的一个可能原因是 SysConfig 无法自行生成 device.c 和 device.h 文件、这些文件是手动添加的、而通过从一个更改为另一个 IC、不允许我排除 device.c 和 device.h 文件、这样我就可以为新的 IC 再次添加这些文件。 我已尝试重新安装 SysConfig 多次、但仍然无法正常工作、那么原因是什么以及如何使用两个不同的 SysConfig 文件将工程从一个 IC 成功迁移到另一个 SysConfig。

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

    尊敬的 Divesh:

    您能否确认在加载程序时已迁移到的 IC 是否跳转到 main?

    如果器件在器件初始化期间停止、听起来器件初始化例程出错了。  

    您能否提供您在 CCS 中看到的错误的任何屏幕截图? 如果这是器件初始化问题、请确保为您要迁移到的器件正确配置时钟设置。  

    是否使用 SysConfig 生成 device.c 和 device.h 文件? 或者您是否在使用 C2000WARE SDK 中提供的器件支持文件?

    此致!

    Ryan Ma

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

    SysConfig 无法自行生成 device.c 和 device.h 文件、因此我使用 C2000WARE SDK 中的器件支持文件、因此它适用于我导入了器件支持文件的 IC 、但当我更改 syconfig 文件并尝试通过禁用之前 IC 的 SysConfig 文件为其他 IC 运行时、 不支持、也不允许我更改器件支持文件、因此我无法将其迁移到另一个 IC。 我没有遇到这样的错误,我只是在 main 文件中的 device_init ()函数之后引入了一个断点,该断点没有被控制器识别,因此它意味着它不会通过设备初始化,而代码不会被馈送到 IC

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

    通过启用器件支持模块、可让 SYSCFG 生成 device.c 和 device.h 文件。

    使用 SYSCFG 迁移到另一个 IC 时、device.c 和 device.h 文件将自动更新。

    此致!

    Ryan Ma

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

    器件文件生成工作正常、但我在尝试调试时遇到以下调试错误、您能帮助我吗?

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

    尊敬的 Devesh:

    它似乎卡在 BootROM 中。 在出现此错误之前、代码是否正确跳转到 main? 如果是、在 bootROM 中结束该程序之前、您能否共享调用栈的屏幕截图?

    请参阅我们的"TRM"章节、了解为什么会输入 BootROM。

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

    就在 device_init ()语句之前,它被卡住并抛出这个调试错误,所以如何解决这个错误。 我还附上了寄存器窗口屏幕截图。

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

    尊敬的 Devesh:

    您能概述发生的确切步骤吗? 您是否能够加载程序、并在点击"Resume"之前在 main 暂停 CPU。

    我会仔细检查 codestartbranch 文件、以确保已为 F280013x 设置了所有内容。

    此致!

    Ryan Ma