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.

[参考译文] TMS320F280025:闪存锁定后、解锁操作仅在单步模式下有效。

Guru**** 2584155 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1007686/tms320f280025-after-the-lock-of-flash-the-unlock-operation-is-only-valid-in-single-step-mode

器件型号:TMS320F280025

密码区域:(origin = 0x78020、length = 0x000010)

解锁功能

解锁功能仅在"for "循环在 单步模式下运行时有效。

 

检查 Z1_CR 寄存器后、只有当"for"循环在 单步模式下运行时、才会设置"已布防"标志位、否则它将保持为零。 只有在"已布防"标志位被置位后、"不安全"标志位才会被置位、这意味着解锁操作是有效的。

那么、在正常运行模式下、解锁操作如何有效呢?

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

    您好!

    在从用户 OTP 读取密码之前、请检查您是否已禁用数据高速缓存。 如果不是、则可能会出现问题。  

    此致、

    Vivek Singh

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

    大家好、Vivek Singh

    如何检查数据高速缓存是否已禁用? 在正常运行模式下运行解锁功能时、尽管未设置标志位"已布防"和"不安全"、但数组 tem_dat[4]的数据值 与128位密码一致。 在单步模式下(程序代码保持不变)、解锁功能有效。 因此、我认为数据读取是可以的。

    此致、

    徐伟卜

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

    您好!

    如果您尚未包含该代码、则它不会被禁用。 请参阅下面的示例代码以禁用然后重新启用高速缓存。

    //
    //禁用高速缓存  
    //
    Flash_disableCache (ctrlBase);

    <<<< 解锁功能调用>>>

    //
    //启用缓存和预取机制以提高代码的性能
    //从闪存执行。
    //
    Flash_enableCache (ctrlBase);

    此致、

    Vivek Singh

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

    大家好、Vivek Singh

    谢谢你。 这种方法可以完美地解决我的问题!

    此致、

    徐伟卜