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.

[参考译文] CC2652P:器件在 SysCtrlSystemReset 后未重新启动

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1328402/cc2652p-device-is-not-restarting-after-sysctrlsystemreset

器件型号:CC2652P

您好!

我们正面临一个奇怪的问题,在使用 SysCtrlSystemReset()触发复位后,设备有时无法启动。

我们看到、器件即使在 BLE OTA 后也无法启动。 (工程是具有 OTA 的 DMM BLE+Zigbee)
但是、RESET 引脚暂时接地会重启器件。

我已查看其他论坛帖子
1.未处于调试中的 halt-in-boot。 进行生产
2.尝试过 HAL_SYSTEM_RESET(),不起作用

经过多次试验,我们找到了一种方法来重现它现在,我们有一个带有一些硬件继电器的器件,如果我们切换继电器,然后触发 SysCtrlSystemReset()设备关闭但不启动备份。

您能建议任何步骤来分析这种情况或强制启动的替代方法吗?  

谢谢
阿克希莱什

 

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

    尊敬的 Akhilesh:

    感谢您的联系! 您能否分享您当前使用的 SDK 版本?

    是否尝试过简单地写入复位寄存器而不是使用 SysCtrlSystemReset ()命令?

    此致、

    卢克

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

    您好!

    这是基于6.10 SDK、基于示例 DMM BLE+Zigbee 项目

    SysCtrlSystemReset()对寄存器只写正确吗?  
    HWREGBITW (AON_PMCTL_BASE + AON_PMCTL_O_RESETCTL、AON_PMCTL_RESETCTL_SYSRESET_BITN)= 1;  

    有没有其他方法可以做到这一点? 请告诉我、我可以尝试一下、  

     HAL_SYSTEM_RESET 是否也与上述不同?
    #define HAL_SYSTEM_RESET () ( HWREG ( AON_SYSCTL_BASE + AON_SYSCTL_O_RESETCTL )|= AON_SYSCTL_RESETTL_SYSRESET_M );

    TRM 中只提到了1个 RESETCTL。

    谢谢
    阿克希莱什

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

    尊敬的 Akhilesh:  

    我们建议您将 SDK 升级到 此处可找到的最新版本。

    此命令会写入寄存器、但您也可以自行执行此操作、正如您记下的 "HWREGBITW (AON_PMCTL_BASE + AON_PMCTL_O_RESETCTL、AON_PMCTL_RESETL_SYSRESET_BITN)= 1;"。  

    我会内部询问其他方法做这个,并在周末后回到你!

    此致、

    卢克

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

    您好!

    我们计划很快迁移到新的 SDK、但它们之间的重置是否有区别?  

    引脚复位可以正常工作、但内部复位会卡住。 试图自己设置寄存器,但它没有帮助
    期待您的答复

    谢谢
    阿克希莱什

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

    尊敬的 Akhilesh:

    这两个复位之间不应有任何区别、但它可以帮助我们缓解可能导致您目前看到的错误的任何其他外围问题。  但是、我今天晚些时候会向我的内部团队提出这个问题、并会如前所述与您联系!  感谢您的耐心。

    此致、

    卢克

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

    Luke、您好!  

    如果有任何其他方法强制重新启动,则有任何信息吗? 或以编程方式重新启动代码?
    是否可以强制使用 jumpToPrgEntry ?  

    谢谢
    阿克希莱什

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

    尊敬的 Akhilesh:

    除了前面提到的方法之外、我知道没有其他强制重新启动的方法。 它可能有助于在调试中休息后发现导致器件在启动时挂起的原因。  

    此致、

    卢克