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.

[参考译文] TMDSCNCD28069ISO:闪存锁定

Guru**** 2492385 points
Other Parts Discussed in Thread: C2000WARE, TMDSCNCD28069ISO, UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1549423/tmdscncd28069iso-flash-locked

器件型号:TMDSCNCD28069ISO
Thread 中讨论的其他器件:C2000WAREUNIFLASH

工具/软件:

尊敬的团队:

客户:“我决定从 C2000Ware 导入一些工程、以便在 TMDSCND28069ISO 上进行测试。 我继续并下载了以下项目进行测试。

 

  1. Example_2806xLedBlink–从 device_support 示例导入。 我编译然后调试、没有出现任何问题。
  2. Example_2806xGpioToggle–从 device_support 示例导入。 我编译然后调试、没有出现任何问题。
  3. cla_sincos–从 CLAMath 库示例导入并将配置更改为 2806x。 我编译没有任何问题、但调试失败、导致闪存被锁定。
  4. cla_sqrt–从 CLAMath 库示例导入并将配置更改为 2806x。 我编译没有任何问题、但调试失败、导致闪存被锁定。

 

CLA 示例是我需要使用的函数。 即使我将配置更改为 2806x、代码仍然位于 2805_RAM 中。  

 

CLAMath 示例代码似乎导致了问题。 我不想购买另一块电路板、因为我只运行了 TI 代码并希望更换它。 如何解决此问题?“

如果您还有任何问题、请告诉我!

谢谢你

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

    尊敬的 Surosh:

    您能详细解释一下“调试失败“的含义吗? 您是否也尝试过重新刷新之前正常工作的 LED 闪烁代码?

    还请共享您正在使用的 C2000ware 版本。

    此致、

    Delaney

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

    尊敬的 Delaney:

    客户刚刚跟进此问题、说他可能发现了问题:“2805_RAM 配置会写入 0x37FFFE、这是 28069 的密码字之一。 我生成了一个十六进制文件、该文件定义了写入 0x37FFFE 的内容、但未解锁闪存。 此外、2805_RAM 存储器映射显示 0x37FFFE 处有两个字、而不是一个字。 如果您可以让别人确认 2805_RAM 配置向 28069 写入的内容、我想我可以解锁闪存。“

    我将跟进他们使用的 C2000ware 版本以及您的建议。

    谢谢您、

    Surosh Rashidi

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

    尊敬的 Surosh:

    我会仔细研究一下、然后回复您。 如果他们对我的建议也有答复、请告诉我。

    此致、

    Delaney

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

    尊敬的 Delaney:  

    尚未收到客户的回复、想知道您是否有 2805_RAM 问题的更新。 请告诉我。

    谢谢您、

    Surosh Rashidi

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

    尊敬的 Surosh:

    请再给我一天时间来研究这个问题、然后我会回答。

    此致、

    Delaney

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

    器件型号:TMDSCNCD28069ISO

    工具/软件:

    尊敬的团队:

    我们希望就客户的以下问题寻求您的帮助。

    我从 ClaMath 下载了 cla_sincos 程序、以便在控制板上进行测试。 它被设置为 2805_RAM、自从 2805_RAM 存储器映射写入 28069 的密码部分后、当我将其加载以进行刷写时、它就会锁定闪存。 我想知道确切写入了 28069 密码部分的内容、以便可以使用 UniFlash 解锁闪存。 请确认所写的内容。

    此致、

    Danilo

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

    Danilo,

    让客户尝试以下操作:

    FFFF FFFF FFFF FFFF FFFF 0100 8a99  

    这些地址应该有 LB _c_int00、这是该指令的解码。  

    如果这不起作用、我需要找到一些 055 器件、以便尝试下载示例并读取这些值。

    此致、

    Matthew

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

    您好、Matthew、

    客户尝试了解决方案、但不能用。 请在下面查看他的反馈。

    不幸的是、这不起作用。 我在 F2805xCodeStarttBranch.asm 中查看了启动代码、发现启动地址包含 LB wd_disable 而不是 LB _c_int00、因为 WD_DISABLE = 1。 请参阅 下面的代码参考。
    **********************************************************************************

    WD_DISABLE .set 1;设置为 1 以禁用 WD、否则设置为 0

    .ref _c_int00
    .global code_start

    **********************************************************************************
    *功能: codestart 段
    *
    *说明:跳转到代码起点
    **********************************************************************************

    .sect “codestart “

    CODE_START:
    .if WD_DISABLE == 1
    lb wd_disable ; Branch to watchdog disable code
    .else
    LB _c_int00;Branch 于 RTS 库中的 boot._asm 开始
    .endif

    ; end codestart section

    **********************************************************************************
    *功能: WD_DISABLE
    *
    *说明:禁用看门狗计时器
    **********************************************************************************
    .if WD_DISABLE == 1

    .text
    WD_DISABLE:
    SETC OBJMODE;为 28x 目标代码设置 OBJMODE
    EALLOW;启用受 EALLOW 保护的寄存器访问
    MOVZ DP,#7029h>>6;设置 WDCR 寄存器的数据页
    MOV @7029h、#0068h;设置 WDCR 中的 WDDIS 位以禁用 WD
    EDIS ;禁用受 EALLOW 保护的寄存器访问
    LB _c_int00;Branch 于 RTS 库中的 boot._asm 开始

    .endif

    ;结束 wd_disable

    .end

    如果你能得到 lb wd_disable 的字节、我可以尝试一下。

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

    尊敬的 Delaney:

    是否有任何意外更新?

    谢谢您、

    Surosh Rashidi

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

    我们来试试、

    FFFF FFFF FFFF FFFF FFFF 0100 875B

    如果这不起作用、请尝试交换两个词、即 875B 0100

    此致、

    Matthew

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

    尊敬的 Surosh:

    因为我要离开办公室、所以我正请其他专家来看看这个问题。

    此致、

    Delaney

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    "2805_RAM 配置“ 配置将写入 0x37FFFE、这是 28069 的密码字之一。

    2805x 和 280x 上的密码位置 位于 0x3F 7FF8-0x3F 7FFE。 (不是 37 F....) 以 0x37 xxxx 开头的地址无效。

    这些器件比较旧。  或许是为客户配备较新器件的 LaunchPad 样片?  

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

    Matthew、

    我尝试了 0100 875B 和 875B 0100、但均未解锁器件。 我确实查看了 28x 说明文档、并发现 LB 指令可能从 0400 开始、而不是从 0100 开始。 我尝试了 0400 并且它也不起作用。

    是否有办法在不在 调试模式下使用 CCS2020 的情况下从编译器查看闪存?  此外 、您还能获得 28069 控制卡并复制问题吗?

    感谢 你的帮助。

    Dennis

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

    Dennis,

    感谢您尝试此操作、是的、我将找到合适的 EVM/器件并为您提供正确的解锁值。

    此致、

    Matthew

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

    Dennis,

    这应该是: FFFF FFFF FFFF FFFF FFFF FFFF 0040 8B9E

    0040 — 如您所说是磅

    8B9E 是 WD 禁用代码位置。

    为了便于将来参考、可以使用位于以下 CCS 安装路径中的 dis2000.exe 实用程序来获取.out 文件的内容作为线性代码列表:  

    C:\ti\ccs1270\ccs\tools\compiler\ti-cgt-c2000_22.6.1.LTS\bin\

    如果从命令提示符运行“dis2000.exe cla_sincos.out“、它将显示对上面闪存的最后两个字进行了编程的内容。

    只是为了防止客户修改他的代码在所有和以上不起作用。 Slight smileμ s

    最后、这是同一个问题吗?   TMDSCNCD28069ISO:闪存锁定 是否可以关闭该线程?

    此致、

    Matthew  

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

    Matthew、

    我不在该国、下周才能进行测试。 如果可以解锁存储器、我会让您知道。

    您引用的另一个线程是针对同一问题的。

    谢谢

    Dennis

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

    谢谢 Dennis,我加入了线程,以保持一切在同一个地方。

    我们会等待您的返程、希望这可以解锁。

    此致、
    Matthew

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

    Matthew、

    我能够使用您给我的变量来解锁存储器。

    感谢您的帮助!

    Dennis