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.

[参考译文] TMS320F2.8377万S:F2.8377万S DCSM问题

Guru**** 2472450 points
Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1076561/tms320f28377s-f28377s-dcsm-problem

部件号:TMS320F2.8377万S
主题中讨论的其他部分:UNIFLAASH

大家好,

我已将DCSM工具添加到我的项目中,

然后我调整了LINKPOINTERS意外的只读模式,并编译后在该模式下加载。

稍后我再次尝试,但无法加载更多程序,

那么我该如何解决这个问题呢? 仅执行模式导致此问题?

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

    您正在使用基于位字段的项目? 是COFF还是ELF?

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

    我的设置是COFF,为什么?

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

    我认为这可能是原因。 生成的CMD/ASM应采用ELF格式。 您是否可以尝试使用driverlib ELF项目并添加DCSM设置,然后查看它是否正常工作?

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

    由于您已在设备中编程密码,因此现在它是安全设备。 您需要在闪存插件GUI中提供密码才能对其进行编程。 您可以通过单击工具-> CCS中的片上闪存打开GUI,然后在密码字段中输入正确的密码,然后尝试对闪存进行编程。

    此致,

    Vivek Singh

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

    当我尝试使用ELF编译时,它给出如下错误。

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

    我正在使用CCS v11,没有工具->片上闪存,或者看不到:)...

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

    顺便说一下,您说设备受密码保护,所以我也想用这个密码,但如果密码相同,为什么我不能再次加载它??? 我会一直这样吗?

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

    正如 所说,这不是一个COFF/ELF问题。 您的设备密码受到保护,需要遵循以下步骤:

    </s>107.6561万 2.8377万2.8377万398.4655万398.4655万

    由于您已在设备中编程密码,因此现在它是安全设备。 您需要在闪存插件GUI中提供密码才能对其进行编程。 您可以通过单击工具-> CCS中的片上闪存打开GUI,然后在密码字段中输入正确的密码,然后尝试对闪存进行编程。

    此致,

    Vivek Singh

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

    是否可以共享"工具位置"选项的屏幕截图?

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

    只有在启动 目标(调试启动)后,您才能看到该选项。 您可以启动调试程序,它可能会尝试对代码进行编程,但 失败(这是正常的)。 之后,您应该能够看到"工具"选项。 现在打开GUI,在密码字段中输入正确的密码,然后选择要再次加载的.out文件。

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

    当我在GUI上填写密码时,没有任何问题,它可以重新编程。 谢谢你。

    我还有几个问题

    1-我再也不能更改密码了,对吧? 因为当我解锁Z1和Z2并更改密码,然后点击"程序密码"时,再次出现错误。

    2-I已设置 为F2.8377万S

    Z1-CSMPSWD3 0x55.5555万   

    Z1-CSMPSWD2 0x4444.4444万  

    Z1-CSMPSWD1 0x3333.3333万  

    Z1-CSMPSWD0 0x22.2222万  

    Z1-GRABECT  0xFF55.5555万   //所有闪存扇区至区域1

    Z1-GRABRAM  0xFFFF5555    //所有RAM到区域1,此时未使用CLA,因此将其留空。

    Z1-EXEONLYSECT 0xFFFFFFFF ///仅执行保护已全部禁用

    Z1-EXEONLYRAM  0xFFFFFFFF//仅执行保护已全部禁用

    这些对代码读取保护来说足够了? 还是也应该设置 Z1-PSWDLOCK?

    3-

    如何确保代码受到保护? 如何测试?

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

    您好,

    1-我2000我不107.6561万不能2.8377万能再2.8377万再更改398.6976万更改密码398.6976万密码了,对吗? 因为当我解锁Z1和Z2并更改密码,然后点击"程序密码"时,再次出现错误。

    安全设置为OTP (一次性可编程),因此您无法再次对相同位置进行编程。 为了使用户能够更改安全设置(如密码值 ),我们提供了链接指针,用户可以更改该指针以选择不同的区域选择块,然后在此处编程新的安全设置。 请参阅设备用户指南中的DCSM章节以了解更多详细信息。

    这些2000这些是否107.6561万是否足以2.8377万足以提供2.8377万提供代码398.6976万代码读取398.6976万读取保护? 或者我也应该设置 Z1-PSWDLOCK?

    您还必须更改PSWDLOCK,因为除非您对密码进行编程,否则密码将可访问(可见)任何代码和调试器,这意味着,如果有人可以通过调试器连接到设备,则读取密码值并使用该值解锁设备。

    如何2000如何确保107.6561万确保代码2.8377万代码受到2.8377万受到保护398.6976万保护?398.6976万? 如何测试?[/QUOT]

    这是一个棘手的问题。 用户需要拥有自己的测试环境,以检查其软件是否正确安全。 人们需要像黑客一样思考,并尝试在启用安全的设备上访问受保护的信息。

    此致,

    Vivek Singh

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

    感谢您的回答。

    </s>2000 107.6561万2.8377万2.8377万398.7646万398.7646万
    如何确保代码受到保护? 如何测试?

    这是一个棘手的问题。 用户需要拥有自己的测试环境,以检查其软件是否正确安全。 人们需要像黑客一样思考,并尝试在启用安全的设备上访问受保护的信息。

    [/引述]

    在某些情况下,当您将安全代码加载到控制器时,我尝试询问其他控制器, 然后尝试读取内存,您只能看到0xFFFF,但在uniflash中,当我读取内存时,我可以看到不同的值,这意味着代码不受保护,为什么我可以在加载受保护的代码后读取内存?

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

    如果存储器是安全的,则您将在此设备上看到所有0。编程后,请发出重置,然后检查该值。 如果仍看到不同的值,则表示内存未配置为安全。  

    此致,

    Vivek Singh

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

    现在我已经尝试在内存中读uniflash,我可以看到不同的值“0”,但我们前面已经讲过的这个主板是安全的...

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

    这是不安全的地区。 请查看有效的内存地址。

    此致,

    Vivek Singh

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

    当我检查闪存库0扇区时,我可以看到一些数据和0xFFFFs,而不是零...

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

    编程后是否发出复位? 这仅意味着使用正确的密码解锁了任一区域,或者闪存扇区未配置为安全。 是否还可以通过连接到CCS来检查此问题? 我假设 您在此设备上有以下安全配置。

    </s>2000 2000107.6561万2.8377万2.8377万398.6976万398.6976万

    2-I已设置 为F2.8377万S

    Z1-CSMPSWD3 0x55.5555万   

    Z1-CSMPSWD2 0x4444.4444万  

    Z1-CSMPSWD1 0x3333.3333万  

    Z1-CSMPSWD0 0x22.2222万  

    Z1-GRABECT  0xFF55.5555万   //所有闪存扇区至区域1

    Z1-GRABRAM  0xFFFF5555    //所有RAM到区域1,此时未使用CLA,因此将其留空。

    Z1-EXEONLYSECT 0xFFFFFFFF ///仅执行保护已全部禁用

    Z1-EXEONLYRAM  0xFFFFFFFF//仅执行保护已全部禁用

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

    是否在编程后发出复位?-是

    这些在CCS上是相同的

    Z1-CSMPSWD3 0x55.5555万   

    Z1-CSMPSWD2 0x4444.4444万  

    Z1-CSMPSWD1 0x3333.3333万  

    Z1-CSMPSWD0 0x22.2222万  

    但它们与默认值相同,  

    Z1-GRABECT  0xFF55.5555万   //所有闪存扇区至区域1

    Z1-GRABRAM  0xFFFF5555    //所有RAM到区域1,此时未使用CLA,因此将其留空。

    Z1-EXEONLYSECT 0xFFFFFFFF ///仅执行保护已全部禁用

    Z1-EXEONLYRAM  0xFFFFFFFF//仅执行保护已全部禁用

    我尝试在Uniflash上使用"Orogram EXEONLYSECT/RAM,GRABTECT/RAM",但它给出了如下错误。

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

    但它们与默认值相同,  

    Z1-GRABECT  0xFF55.5555万   //所有闪存扇区至区域1

    Z1-GRABRAM  0xFFFF5555    //所有RAM到区域1,此时未使用CLA,因此将其留空。

    Z1-EXEONLYSECT 0xFFFFFFFF ///仅执行保护已全部禁用

    Z1-EXEONLYRAM  0xFFFFFFFF//仅执行保护已全部禁用

    我尝试在Uniflash上使用"Orogram EXEONLYSECT/RAM,GRABTECT/RAM",但它给出了如下错误。

    [/引述]

    这些不是默认值。 GRABECT和GRABRAM值已编程。 有问题。 如果已对这些值进行了编程,则应将安全闪存值显示为0x0。 请在CCS上检查此项。

    此致,

    Vivek Singh

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

    抱歉,存在问题,

    这些值是我要设置的值。

    Z1-GRABECT  0xFF55.5555万   //所有闪存扇区至区域1

    Z1-GRABRAM  0xFFFF5555    //所有RAM到区域1,此时未使用CLA,因此将其留空。

    Z1-EXEONLYSECT 0xFFFFFFFF ///仅执行保护已全部禁用

    Z1-EXEONLYRAM  0xFFFFFFFF//仅执行保护已全部禁用

    但我读了CCS不同的值,这些值在下面是sgown。

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

    您在CCS中看到的内容看起来是正确的,由于这些内容未编程,所以闪存不安全。 看起来您之前已使用这些值对这些位置进行了编程,不想更改它,但这是不可能的,因为这些是 OTP (一次性可编程)位置。 您需要更改链接指针值以选择新的区域选择块,然后将新的安全设置编程到该区域选择块中。

    此致,

    Vivek Singh

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

    是的,现在当我尝试编程时,它不接受。  

    好的,我将更改 链接指针值,然后再次尝试重新编程,然后参阅。

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

    很好。 这将解决您看到的问题。

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

    hİ Singh

    我已经更改  了链接指针值并尝试“编程LINKPOINTER”,但它给出了如下错误....

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

    您使用的是uniflash还是CCS? 您是否正在使用.out或插件GUI对其进行编程? 您需要在GUI中提供密码值,该工具将在编程前用于解锁设备。 如果没有解锁,则无法对用户OTP区段进行编程。

    如果使用.out,请使您还更新了链接程序cmd文件,以选择新的区域选择块地址。

    此致,

    Vivek Singh

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

    很抱歉迟到了,这段时间我不在办公室...

    所以我 会试着在这里写...感谢您的支持。

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

    没问题。 如果您有任何疑问,请告知我们。

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

    您好,Singh先生:

    我用新的MCU替换了板载,用CCS加载了代码 ,后来当我用UNİFLAS读取内存时,它尝试连接,或者当我尝试用UNIFLAASH加载文件时,它不会将文件加载到MCU。 芯片闪存上的CCS和UNIFLASH工具上的保护密钥相同...这是什么意思...

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

    请检查更新并安装更新(如果有),以确保您使用的是最新发布的软件。  

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

    我正在使用最新版本的uniflash ...

    我已重新启动computer....no,但未更改  

    我在另一个computer...no上尝试过,但没有改变

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

    您是否在Uniflash中提供了与CCS中相同的正确密码?

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

    是的,它们是一样的..

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

    您是否可以使用密码值发布CCS和Uniflash GUI的快照。

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

    当我尝试加载程序到MCU以查看CCS的芯片闪存时,它给出了类似这样的错误。

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

    现在我已将MCU更改为“等待模式”并加载了程序。

    在uniflash上:

    在CCS上

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

    因此,在等待模式下,您可以连接和加载?

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

    如果CCS为“是”,则仍无法与UNIFLAASH连接。

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

    对于Uniflash,您也在使用等待模式。  正确吗? 如果您无法通过Uniflash连接,那么您发送了什么Uniflash快照? 尝试连接时,Uniflash会显示什么错误?

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

    我尝试了两种等待模式和获取/闪存模式,两种模式都无法连接...快照是当前快照,我已填充当前值以进行连接... 有时会出现错误,如"目标未连接",有时只需等待 "连接"...类似这样...

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

    我已向Uniflash专家寻求他对这个问题的反馈。

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

    您好,

    您可以尝试以下操作吗? 在UniFlash中,如果您将设备置于等待模式,然后在GUI设置中输入密码,然后尝试单击"计算校验和",它是否能够连接到设备并获取校验和? 如果没有,您能否发布错误消息的屏幕截图?

    谢谢!

    Ricky

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

    出现类似这样的错误,

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

    谢谢。

    如果您在CCS中尝试相同的操作集,您是否能够获得校验和?

    Ricky

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

    CCS已完成,CCS上没有错误

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

    这很奇怪。 CCS和UniFlash之间的连接顺序应该完全相同,因此我不知道为什么它在两种情况下显示不同的行为。

    您是否可以尝试将CCS中使用的CCXML与UniFlash一起使用? 要执行此操作,请首先找到用于在CCS中启动调试会话的CCXML文件。 然后启动UniFlash GUI,在初始页面中找到“Create session from Existing Target Configuration File”(从现有目标配置文件创建会话)部分,然后单击“Select”(选择)一个.CCXML文件以创建新会话,并从CCS中选择CCXML。

    然后,再次尝试相同的校验和序列,查看是否出现相同的连接错误。

    谢谢!

    Ricky

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

    我稍后再试,并在这里分享结果。

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

    hİ 刘

    重新启动计算机后,"calculate checksum"(计算校验和)也在uniflash上工作...校验和后,我尝试读取内存,它给出如下错误

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

    所以我的最后一个情况是(逐步说明)

    1-通过CCS或uniflash加载程序到MCU (我没有点击“PROGRAM PASSWORD"

    2-尝试读取内存,我可以读取..

    3-通过CCS或uniflash加载程序到MCU,然后单击 “PROGRAM PASSWORD”

    4-尝试读取内存,我无法 读取,它等待“正在连接”...或者有时显示错误,因为“目标未连接”

    5-将启动模式更改为“等待模式”,当MCU I处于等待模式时,我尝试读取内存,我可以连接,但所有值都是“0000”。

    所以我填写的“CSMPSWDx”密码是真的,为什么我不能读取内存? 或者没有“等待模式”就无法连接?或者当我使用真实密码在等待模式下连接时,为什么只能读取零?

     

     

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

    您好,Singh:

    请看我的最后一篇文章吗?,您对此有什么想法吗?