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.

[参考译文] CCS/LAUNCXL-CC2650:读取CC2650 driverlib ROM的监视点会导致CCS7 Flashloader错误

Guru**** 2529560 points
Other Parts Discussed in Thread: CC2650

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/585843/ccs-launchxl-cc2650-watchpoint-for-reads-to-cc2650-driverlib-rom-cause-ccs7-flashloader-errors

部件号:LAUNCHTXL-CC2650
在“线程: CC2650”中讨论的其它部件

工具/软件:Code Composer Studio

当使用CCS LAUNCXL-CC2650上的7.1 .0.0.0016万 调试程序时 ,已设置了两个硬件监视点,以便在地址 0x1000万处从driverlib读取任何数据时触发。  0x1000ffff:

一旦设置了这些监视点,启动调试会话时Flashloader将报告错误:

Cortex_M3_0:Gel输出:内存映射初始化完成。
Cortex_M3_0:Gel输出:电路板重置完成。
Cortex_M3_0:Flashloader无法擦除扇区1 (代码4096)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区2 (代码8192)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区3 (代码1.2288万)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区4 (代码1.6384万)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区5 (代码2.048万)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区6 (代码2.4576万)。 扇区可能已锁定-尝试批量擦除操作。
Cortex_M3_0:Flashloader无法擦除扇区31 (代码12.6976万)。 扇区可能已锁定-尝试批量擦除操作。 

在报告有关无法擦除扇区的Flashloader错误后:

-如果自上次下载后更改了程序,“Performing a Verify Program (执行验证程序)”报告失败。

-如果自上次成功下载后程序未更改,“Performing a Verify Program (执行验证程序)”报告了“Pass (通过)”。

出现Flashloader错误后,如果禁用上面列出的硬件监视点,则后续下载成功。

调试属性设置为:

-已启用“从以前的会话恢复断点”。

-"擦除设置"设置为"仅限必要扇区(保留扇区内未触及的内容)"

它是否被认为是一个错误,它会自动恢复从driverlib ROM读取的监视点,从而导致CC2650 Flashloader失败?

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

    很奇怪。 我们必须进一步探讨这个问题。 如果在ROM中设置断点,我不会期望它们对闪存产生任何影响。 我不知道我们的闪存算法是否使用driverlib。 这将导致在闪烁算法运行时触发监视点。 我会研究一下这个问题,然后回复给您。

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

    事实证明,CC2650上的闪存算法确实使用ROM API。 因此,这可能是您遇到的情况。 我们必须看看是否有办法可以自动避免这种情况。

    此致,
    John
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们希望了解是否有一种方法可以在刷新过程之前禁用所有硬件断点,然后再启用。 从技术上讲,您可以看到类似的监视点放置在闪存algo使用的RAM地址上的问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们希望了解是否有方法可以在刷新过程之前禁用所有h/w断点,然后启用

    同意这是一个好的解决方案。

    如果您需要另一个测试案例,我在TIVA设备上遇到了类似的问题-请参阅 TM4C123GH6PM FLASH_CTRL_FLASH_FMA上的CCS v6观察点导致加载程序失败