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.

[参考译文] TMS320F2.8075万:休眠-管理;快速器件

Guru**** 2553260 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/630436/tms320f28075-hibernate---bricking-device

部件号:TMS320F2.8075万

我通过JTAG刷新了一个程序,该程序几乎在程序启动时即处于休眠状态。  回想起来,这是一件很愚蠢的事。  我现在正在尝试弄清楚如何在它上闪存一个不同的程序。  

如果 我尝试正常闪烁,我收到调试器错误,即探头无法连接-设备处于休眠状态。  如果我尝试切换GPIOHIBWAKE行,尽管确切的错误消息会有所不同,但这也不起作用。  我曾尝试使用PWM输出(频率10 kHz - 100 kHz)从另一个微控制器驱动GPIOHIBWAKE线,但从未让设备从休眠状态中退出足够长的时间以便调试器进行连接。  我还尝试切换RST线路,尽管这只是通过手动接地。

我认为我的调试器不使用JTAG_NTRST行,我认为这可能会使芯片脱离休眠状态。

我上一次的想法是尝试提升GPIO 84 (启动模式引脚0)。  不幸的是,两个启动引脚都连接到3.3V,并且由于它们来自处理器下面,因此无法切断这些跟踪。  我曾尝试提起销,但没有太多的运气。

加载此类程序后,是否有人能够重新刷新设备?

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

    这很困难。 我假设您在进入休眠模式之前没有在应用程序代码中配置HIBBOOTMODE/IORESTOREADDR寄存器? 也没有IORERODE代码。 对吧?

    让我们尝试一下-

    1)是否可以将该主板上设备的XRSn引脚保持在低位? 如果是,则保持XRSn低电平。
    2)尝试连接至CCS。 这将经历一些错误,但您应该能够连接。
    3)立即释放XRSn。
    3)现在通过CCS内存监视窗口在HIBOOTMODE寄存器中写入“等待启动”值(请参阅TRM中的BootROM部分)。
    4)断开CCS。
    5)切换GPIO以将设备从休眠状态唤醒。
    6)连接至CCS。 如果已连接,您现在应该可以擦除闪存。

    让我们知道情况如何。

    此致,

    Vivek Singh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果我将XRS引脚保持在低位,我会在CCS控制台上看到以下信息:

    C28xx_CPU1:凝胶输出:
    内存映射初始化完成
    C28xx_CPU1:CPU重置失败:(错误-1137 @ 0x6)设备保持在重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:读入寄存器PC时出现故障:(错误-1137 @ 0x0)设备处于重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:写入寄存器XAR0时出错:(错误-1137 @ 0x7)设备处于重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:GEL:执行OnReset(1)时出错:目标无法写入寄存器XAR0
    在XAR0=*((unsigned long *) 0x703F0)[f2.8075万.gel:352]
    AT SetupDCSM()[f2.8075万.gel:31]
    在OnReset时(1)
    C28xx_CPU1:CPU重置失败:(错误-1137 @ 0x6)设备保持在重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:读入寄存器PC时出现故障:(错误-1137 @ 0x0)设备处于重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:写入寄存器XAR0时出错:(错误-1137 @ 0x7)设备处于重置状态。 使设备退出重置,然后重试此操作。 (仿真软件包6.0 .576.0)
    C28xx_CPU1:GEL:执行OnReset(1)时出错:目标无法写入寄存器XAR0
    在XAR0=*((unsigned long *) 0x703F0)[f2.8075万.gel:352]
    AT SetupDCSM()[f2.8075万.gel:31]
    在OnReset时(1)

    看起来如果所有这些操作都不是在脚本中自动发生的,我就可以在第一条错误消息后停止释放XRS引脚(如您所指示的那样)。 但是,我不知道是否有可以修改的脚本,或者它是否内置在CCS exe中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我还假设,“连接”是指开始调试。 这是你的意思吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Rob,

    调试快捷方式对于此练习可能过于繁琐。

    我认为手动启动目标配置,然后尝试手动和重复连接到C28x CPU会更容易。

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

    Rob,

    尽管存在这些错误,目标仍应保持连接,您应该能够在CCS记忆监视窗口中查看内容。 如果对此有问题,请按照Tommy所说的内容进行操作。 无需单击"Debug"(调试),手动启动目标配置,然后右键单击每个CPU目标并选择"CONNECT"(连接)选项。

    此致,

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢Vivek和Tommy! 我遵循了Vivek的流程,但不知道如何连接到目标,除非通过调试快捷方式。 Tommy关于如何操作的详细信息非常有帮助。 作为附带说明,我不必反复尝试连接。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rob,您好!

    您是否能够立即对设备进行重新编程并解决问题。

    此致,

    Vivek Singh

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

    是的。  问题已完全解决,我标记了我认为是解决方案的2个帖子:

    您的-提供了解决问题的步骤

    Tommy's - 这表明需要手动启动/连接(我不知道您甚至可以手动启动/连接)