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:CC1310 Dosen't 在下载后使用闪存程序2、但在调试后使用 CCS 调试

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1392454/cc1310-cc1310-dosen-t-work-with-flash-programmer2-after-download-but-does-work-with-ccs-debug-after-debugging

器件型号:CC1310
主题中讨论的其他器件: TMDSEMU200-UUNIFLASH

工具与软件:

您好!

定制电路板有问题。

我的情况如下。

我得到了带有 CC1310F128RSM 的定制电路板。

我想将 CC1310 Launchpad 移植到定制电路板(CC1310F128RSM)。

因此、我修改了用于定制电路板的 CC1310 Launchpad 中使用的代码。

我仅根据定制电路板的条件更改了 IO 端口。

然后、我检查了"Board Working"。

调试后与 CCS 调试一起工作。

但是、在使用闪存程序2下载后无法正常工作。

我正在使用 XDS200调试探针(TMDSEMU200-U)

好的、我有问题。

1.除了 IO 端口外、是否有任何需要更改代码以移植新的定制电路板的地方?

2. CCS Debug 和 Flash Program2 配置之间有何不同?

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

    在这种情况下会出现一个典型问题、即您的定制电路板上没有32kHz 晶振、代码也不会反映这一点。 如果您在论坛上搜索、就会发现很多类似的情况、在这些情况下、电路板可与调试器一起使用、而在下载代码时不能使用。  

    我还会测量电流消耗以指示代码卡住。 还可以将调试器连接到正在运行的目标。  

    最可能无关紧要、但为什么在复位时通过 JTAG 接口和二极管(而不是电容器)进行强上拉/下拉?   

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

    您好!

    感谢您的答复。

    正如您所说、定制电路板没有32kHz 晶振。

    因此、我更改了  ccfg.c 中的 SET_CCFG_MODE_CONF_SCLK_LF_OPTION、如下所示。

    我不知道以下设置是否正确。

    //#####################################
    // Clock settings
    //#####################################
    
    #ifndef SET_CCFG_MODE_CONF_SCLK_LF_OPTION
     #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION            0x0        // LF clock derived from High Frequency XOSC
    // #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION            0x1        // External LF clock
    //#define SET_CCFG_MODE_CONF_SCLK_LF_OPTION               0x2        // LF XOSC
    // #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION            0x3        // LF RCOSC
    #endif
    
    #ifndef SET_CCFG_MODE_CONF_XOSC_CAP_MOD
    // #define SET_CCFG_MODE_CONF_XOSC_CAP_MOD              0x0        // Apply cap-array delta
    #define SET_CCFG_MODE_CONF_XOSC_CAP_MOD                 0x1        // Don't apply cap-array delta
    #endif
    
    #ifndef SET_CCFG_MODE_CONF_XOSC_CAPARRAY_DELTA
    #define SET_CCFG_MODE_CONF_XOSC_CAPARRAY_DELTA          0xFF       // Signed 8-bit value, directly modifying trimmed XOSC cap-array value
    #endif
    
    #ifndef SET_CCFG_EXT_LF_CLK_DIO
    #define SET_CCFG_EXT_LF_CLK_DIO                         0x01       // DIO number if using external LF clock
    #endif
    
    #ifndef SET_CCFG_EXT_LF_CLK_RTC_INCREMENT
    #define SET_CCFG_EXT_LF_CLK_RTC_INCREMENT               0x800000   // RTC increment representing the external LF clock frequency
    #endif

    但是、情况仍然是一样的。

    电路板可以与调试器一起工作、但在下载代码时无法工作。

    我已将  SET_CCFG_MODE_CONF_SCLK_LF_OPTION 从0 ~ 3更改为0。

    所有这些都相同。

    能否介绍一下您的代码解决方案?


    最可能无关紧要、但为什么在复位时通过 JTAG 接口和二极管(而不是电容器)进行强上拉/下拉?   

    -我不知道确切地说、我们的硬件工程师 参考的是 CC1310-LAUNXAL 板原理图。 如果您想了解原因、我将询问 H/W 工程师。

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

    我在调试和下载之间发现了不同的东西。

    如果我使用 CCS 工具进行调试、则直接24MHz XTAL 振荡。

    但在下载配置下无法正常工作。

    下面是定制电路板24MHz XTAL。

    如何解决此问题?

    谢谢你。

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

    尊敬的 Chanbin:

    在关闭调试会话并复位器件之后、它是否工作? 或者只有在您具有活动的调试会话时它才有效?

    闪存编程器2能否成功对器件进行编程?

    如果您没有32kHz 晶体、则应使用 #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION 0x3 // LF RCOSC

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

    尊敬的 Diego P:

    我使用 Uniflash 解决了我的问题。

    我不知道为什么。 但它可以与 Uniflash 配合使用。

    uniflash 与 Flash 程序员2有何区别?

    我使用了  "#define SET_CCFG_MODE_CONF_SCLK_LF_OPTION 0x3 // LF RCOSC"。

    谢谢你。