《线程》中讨论的其他部件:C2000WARE, UNIFLASH
尊敬的团队:
我正在尝试使用 SCI boot 使用 c2Prog_v1.0.6实用程序在目标板上刻录/刷新十六进制文件。 我已将启动选择引脚 GPIO72和 GPIO84分别设置为1和0。 我正在使用 SCIA 进行闪烁(GPOI28-Rx,GPIO29-Tx)。 请大家帮助我以正确,简明的程序开始。 我是否需要对我的代码进行特殊更改才能实现此目的?
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.
尊敬的团队:
我正在尝试使用 SCI boot 使用 c2Prog_v1.0.6实用程序在目标板上刻录/刷新十六进制文件。 我已将启动选择引脚 GPIO72和 GPIO84分别设置为1和0。 我正在使用 SCIA 进行闪烁(GPOI28-Rx,GPIO29-Tx)。 请大家帮助我以正确,简明的程序开始。 我是否需要对我的代码进行特殊更改才能实现此目的?
普拉文
对于 SCI 启动, GPIO72应为0,GPIO84应为1 (您以另一种方式执行了操作-请检查)。
关于用于闪存的 SCI: 默认情况下,F2837x SCI 引导加载程序使用 GPIO84/85进行 SCI 引导通信。 如果您想将 GPIO28/29用于 SCI Boot,则需要在 OTP 中对 BOOTCTRL 寄存器的 BMODE 位字段进行相应的编程(详细信息可在 TRM 的引导章节4.4.6中找到)。 此外,您还需要从 Codeskin 获取定制的 C2Prog 配置。 请直接通过 info@codeskin.com 与 Codeskin 联系。
谢谢,此致,
瓦姆西
更新:我考虑使用 serial_flash_programr.exe (位于 C:\ti\c2000\C2000Ware_4_00_00\utilities\flash_programmer \serial_flash_programmer)尝试 F2837xD 控制卡 R1.3上的 SCI 启动过程,以简化我们双方的操作。 此外,我还在同一个文件夹中找到了经过详细解释的文档。 默认情况下为
[引用 userid="16728" url="~/support/icros/c2000微控制器-组/CC2000 /f/c2000 -微控制器-论坛/1073521/tms320f28379d-sci-flash-programme-On-custom-made -硬件/3973218#3973218"] F2837x SCI bootloader 使用 GPIO854[引用 GPIO85]用于启动通信。我知道我需要使用串行电缆将控制卡连接到我的笔记本电脑。 但是,我看不到控制卡坞站上的 GPIO 84可用.....请帮助我了解详细的连接图以进行刷新。
请用最简单,最详细的信息回答我的问题,因为我在与 TI C2000 DSP 和 CCS7合作的短短5天时间内。
谢谢。
普拉文
一旦编程,OTP 将无法再次修改-您是正确的。
TI 提供 SCI 闪存内核-请阅读以下内容: https://www.ti.com/lit/sprabv4
以下快照来自此应用程序注释:

关于需要使用的 CCS 版本,请查看: [FAQ]产品变更通知(PCN) 20180523001.1和 PCN 20200115000.2 (用于 TMS320F2837x 和 TMS320F2807x 器件): https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/729543?-FAQ-Product-Change-Notice-PCN-20180523001-1-for-TMS320F2837x-and-TMS320F2807x-devices
关于您的其他问题,我将请我们的内核专家为您提供帮助。
谢谢,此致,
瓦姆西
感谢 Vamsi 和 Anu 的回复。
1.我已经按照文档中提到的步骤操作了。但在命令终端中,我的屏幕被卡在-

通常,内核下载需要多长时间?
此外,当我在 CCS7中连接 CPU1并在内存窗口中手动将0xD00的内容更改为0x815A 时,它会在内存视图中反映出来。 但是,当我断开连接时,内容将重置为0x035A。 CPU 2也会发生同样的情况。
3.我觉得1是因为2而发生的,对吗?
Anu,
1.我可以分别使用 CPU1_FLASE_ONUSICAL_CPU2_FLASH 和 CPU2_FLASH 成功刷新 CPU1和 CPU2。 但是,始终只有 CPU1的 LED 闪烁,CPU2上的 LED 持续亮起。 我遵循了线程,但这并没有给我一个解决方案。
我已升级到 CCS9.2.0和编译器21.6.0.LTS。 有什么解决方案?
2.请指导我如何在 CCS7.0.0和 CCS9.2.0中更改 SCIA 启动的 BOOTCTRL 值。
3.一旦 SCIA 启动的 BOOTCTRL 值发生变化,TI XDS100V2调试探头是否可以在同一台设备上工作?
4.我可以使用 TI Uniflash 实用程序来刷新 SCIA (替换 Codeskin - C2Prog),对吗?
Anu,
1.不,我没有修改链接程序命令文件。它是用的。 我需要修改它吗? 此外,我还将 Z1_BOOTCTRL (0x7801E)的值修改为0x0000815A (使用 SCI 启动模式)。 但在修改后,我会遵循以下行为:
2. 当 CPU1_RAM 和 CPU1_flash 通过 TI XDS 调试端口调试时,CPU1上的 LED 指示灯闪烁(按预期)。 如果我重置电源,控制 卡 LED 指示灯将不会闪烁。 这是预料中的吗?
3.为什么程序无法从闪存执行?
此外,我注意到 CCS 和内存映射中0x7801E 位置(在下图中被包围)的值差异,您能解释一下吗?

5.我能够用开关位置1.0和1.1执行 SCI 闪烁(通过 codeskin c2Prog 实用程序);这是否意味着 CPU1不会从 GetMode 启动中退出?
请优先帮助我。 我已经没有时间了。
普拉文
首先,关于 Uniflash 问题,您不能将其用于 SCI 闪烁。
关于您的其他问题-
如果您希望设备在重置后进入闪存,则需要对 OTP 进行编程以转至闪存启动-您当前已将其设置为 SCI 启动。 SCI 引导模式用于通过 SCI 引导加载程序将闪存内核下载到 RAM。 该设备很可能要使用 SCI 引导加载程序,因此您看不到从 Flash 执行的示例。 由于您无法在此处修改 OTP,为了退出 SCI bootloader,您需要向其发送错误的密钥,任何值(0x08AA 除外)-请参阅以下 F2837xD TRM 启动章节的屏幕截图:

进入 Flash 模式后,如果图像已正确编程,您将看到 LED 闪烁。
我将请科德斯金专家就你的最后一个问题发表评论。
谢谢
安
尊敬的 Anu:
1.即使我认为 DSP 始终处于 SCI 引导状态,也无法从闪存运行代码。 您建议通过发送错误的密钥使其进入闪存启动模式。 可以通过编辑从.out 文件生成的.txt 文件来完成,对吗?
2.通过 C2Prog 实用程序加载程序时如何更改密钥。
重要 的是要清楚说明,让我用这种方式来阐述我的任务声明。 请确认我是否正在采取正确 的方法(直到现在为止,这一主题都是如此)来完成这项任务。
任务:我的服务工程师应该能够 通过 SCI 接口(SCIA 针脚编号)更新 F28378D 的固件 28和29)在现场使用 C2Prog 等实用工具。 更新并重置后,f28379D 应通过闪存运行更新的固件。
4.如果我采取了任何错误的方法,请纠正我。
请尽快让 codeskin 专家参与这条线程,我的时间实在太短了。 此外,请提供印度支持团队的联系信息,以加快解决问题的速度。
普拉文
您可以执行以下操作-将“Get Mode to Flash Boot”(进入闪存引导模式)编程,并尽可能使用默认的 SCI 引脚(84/85)-这样,您只需将引导模式引脚更改为 SCI 执行固件升级,然后返回“Flash Boot”运行应用程序。
如果您希望使用备用 SCI 引脚,则需要使用备用 SCI 引脚对 Get Boot to SCI Boot 进行编程-为此,您可以直接通过 info@codeskin.com 联系 Codeskin 以获得解决方案,并回答您的 C2Prog 问题。
谢谢
安
谢谢 Anu,
[引用 userid="453770" url="~/support/microsoftware/CC2000 -微控制器组/CC2000 /f/C2000 -微控制器-论坛/1073521/tms320f28379d-sci-flash-programming-On-custom-made hardware/3982490#3982490"]如果您希望使用备用 SCI Boot 引导解决方案, info@codeskin.com 请直接与 SCI Prog 联系,以获取相关问题。 [/引用]您的意思是“让模式进入 SCI 启动”吗? 请通过引用之前的线程帖子来确认我是否也这样做了。
是的,这在本次讨论中适用于此特定控制卡。 但请回复我的以下问题,因为我将使用新设备(其 OTP 在生命周期中从未修改):
1.您是否可以建议使用 SCI 引脚28和29在 F28379D 上加载固件,然后从新设备上的闪存启动固件(其 OTP 在生命周期中从未修改过)的替代方法(C2Prog 除外)?
2.我总是需要使用 GPIO84和85进行 SCI 闪存以完成我提到的任务?
3.
[引用 userid="453770" url="~/support/microsoftware/CC2000微控制器-组/CC2000 /f/C2000微控制器-论坛/1073521/tms320f28379d-sci-flash-programming-On-custom-made hardware/3982490#3982490"]您可以执行以下操作-程序获取闪存模式升级,并使用默认的 SCI/84启动模式,如果可能的话,可以使用该模式启动模式,并使用该模式。如果我的硬件上只能访问 SCI 引脚28和29,该怎么办?
我知道,在第三季度,我必须使用0x815A 对 Z1_BOOTCTRL 进行编程,但如果加载后无法从闪存运行固件,那么它的用途是什么,只是将固件复制到闪存中?
普拉文
1.您可以将 C2000的闪存内核嵌入到应用程序中, 每次需要固件更新时,都可以跳转到该位置-您需要某种类型的主机实用程序,该实用程序会向应用程序发送固件更新信号-然后使用引脚28和29更新固件。 如果您保持 OTP 不变,并且两个启动引脚都很高,则每次都将引导至 Flash。
2.如果您只想使用启动引脚而不使用 OTP 在 SCI Boot 和 Flash Boot 之间切换,那么您需要使用84和85。
3.您可以参考#1中列出的解决方案。 如果要通过引导引脚使用带有引脚28和29的 SCI 引导加载程序,则需要按照这种方式进行操作。
谢谢
安
普拉文
如果您使用 SCI 引脚上的拉杆,则应该能够使用引脚84来选择 SCI 和引导模式。 请参阅以下帖子: