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.

[参考译文] CC1310:复位不一致,调用 SysCtrlSystemReset() API 后,代码不能 n#39;t Get 执行。

Guru**** 2873830 points

Other Parts Discussed in Thread: CC1310

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/855972/cc1310-inconsistency-in-reset-code-doesn-t-get-executed-after-sysctrlsystemreset-api-is-called

器件型号:CC1310

您好!

我在 cc1310闪存中有两个程序代码、引导加载程序和应用程序、引导加载程序位于地址0x0中。 此外、还分配了一个扇区用于存储某些配置。

因此、每次复位后、CPU 从引导加载程序开始执行。  

引导加载程序

使用射频内核和 UART 后,引导加载程序使用 SysCtrlSystemReset() API 触发复位。

引导加载程序执行再次开始并跳转到应用程序。

应用

当通过射频接收到某些命令时、应用程序也会进行复位。

但问题是这些从引导加载程序和应用程序的复位不一致、  

它始终正常工作、但有时在调用这些 API 重置后、引导加载程序不会执行。

可以有人帮助吗?

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

    您好!

    我有更多信息供您了解。

    我的两个程序都在闪存中使用 BIOS、在.cfg 文件中进行了注释、

    /*var ROM = xdc.useModule('ti.sysbios.rom.ROM');
    if (Program.cpu.deviceName.match(/CC26/)){
    rom.romName = rom.CC2650;
    }
    否则(Program.cpu.deviceName.match(/CC13/)){
    ROM.romName = ROM.CC1350;
    }*/ 

    对于引导加载程序、m3Hwi.resetVectorAddress = 0x0。

    m3Hwi.resetVectorAddress =应用的应用起始地址。

    CCFG 被放置在最后一个扇区、0x1FFA8。

    配置扇区是第二个最后一个扇区、0x1E000。

    另一个信息是引导加载程序使用的是20KB SRAM 的96%。

    软件复位后,当 CPU 挂起时,当我进行硬复位时,代码从引导加载程序运行并且运行良好,只有当使用 SysCtrlSystemReset () API 触发软件复位时才会发生错误。

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

    您好!

    我们将仔细研究它、尽快返回给您。 请多多包涵。

    谢谢、

    PM

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

    您好!

    能不能有人建议线索。 我假设 CPU 在触发软件复位后在引导加载程序的启动代码中的某个位置挂起。

    谢谢、

    Kannan Vinod

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

    您好!

    问题是否是由于连接了调试器而导致的?

    此致、

    Kannan Vinod

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

    您好 Kannan、

    是否正在运行调试会话? 当器件自由运行时、是否也会发生这种情况?  

    您如何知道两 个 SysCtrlSystemReset ()调用都成功?  

    谢谢、

    Alexis

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

    您好 Kannan、

    没有听到您的反馈、因此我假设您已经解决了您的问题。 如果  您有其他问题或需要添加的信息、请随时答复或打开新主题。

    谢谢、

    Alexis