主题中讨论的其他器件:C2000WARE,, LAUNCHXL-F2800157
我正在尝试使用 PCAN-USB 进行刷写
按照如下所示的过程操作、使用 cmd 线路

我

检查代码时、应该会对其进行初始化、但不知道如何对其进行初始化。
非常感谢任何帮助。 提前感谢。
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.
我正在尝试使用 PCAN-USB 进行刷写
按照如下所示的过程操作、使用 cmd 线路

我

检查代码时、应该会对其进行初始化、但不知道如何对其进行初始化。
非常感谢任何帮助。 提前感谢。
尊敬的 Shankar:
CAN 闪存编程专家目前不在办公室、因此请预计会有延迟。
但是、从自述文件来看、可能需要一些依赖项、因此可能会导致出现以下问题:
* Flash 内核项目需要在 C2000Ware 中(您可能需要单独安装 C2000Ware 的最新版本)。
*峰值 PCAN-USB Pro FD 的设备驱动程序也需要安装
*必须按照下面提供的自述文件中所述运行正确的命令
*创建 hex 文件的另一步骤也必须在自述文件中执行
以下是您在上面显示的文件夹中的自述文件:
CAN Flash Programmer for F28003x, F28P65x
The CAN flash programmer can be used to perform firmware updates via MCAN on the F28003x and F28P65x devices.
The can_flash_programmer needs to be used with the can flash kernel project available in C2000Ware
- for F28003x device at {C2000Ware_root}/driverlib/f28003x/examples/flash.
- for F28P65x device at {C2000Ware_root}/driverlib/f28p65x/examples/c28x_dual/flash_kernel.
The CAN flash programmer is compatible with the PEAK PCAN-USB Pro FD. The device drivers for this
device need to be installed first before the can_flash_programmer can be run on the PEAK device.
Usage of the CAN flash programmer is as follows:
can_flash_programmer.exe -d f28003x -k <kernel hex file name> -a <firmware hex file name>
The kernel hex file and firmware hex file can be generated via the hex2000 utility. This file format
can even be generated as part of the Code Composer Studio build process by adding a post-build step
with the following options:
"${CG_TOOL_HEX}" "${BuildArtifactFileName}" -boot -sci8 -a -o "${BuildArtifactFileBaseName}.txt"
The device needs to be set to MCAN Boot before running this command. The CAN flash programmer
will send the kernel file to the device, pause for a few seconds, and then send over the
application file. The can_flash_programmer can be closed once the application transfer has finished.
此致、
文斯
尊敬的 Charles Roberson:
感谢您的答复。
您能否详细说明需要在 F2800157的.sln 文件中更改哪些参数?
尊敬的 Charles Roberson:
感谢您的答复。
尝试了前面注释中提到的相同建议、但仍面临.exe 生成问题。


所显示的某些定义缺失、但 include / source 中包含这些定义。
需要您的支持才能继续进行此更深入的
谢谢
尚卡尔
您好、Charle、
我们正在 使用 F2800157控制器的 CAN 闪存。 我已根据 F2800157修改了 can_flash_programr.cpp 文件并生成了 can_flash_programr.exe 文件。 (can_flash_programr.exe -d f280015x -k -A )
但是、15x 控制器没有 CAN 闪存内核。
我们可以对 F280015x 器件使用 F28003x 的 flash_kernel_ex4_can_flash_kernel 吗?
非常感谢任何帮助。
谢谢。
Premkumar. T
您好 Charles、
感谢您的答复。
我可以在 F280015x SCI 闪存内核上找到闪存 API 文件、但在哪里可以获取 F280015x 链接器 cmd 文件?
您能建议我必须在这里加载什么文件来代替 是否在该命令上的"can_flash_programmer "cmd 行中执行?
can_flash_programr.exe -d f28003x -k -A
谢谢。
Premkumar. T
尊敬的 Premkumar:
F280015x 闪存内核链接器 cmd 文件可以在以下位置找到: C2000 Ware_Location /device_support/f280015x/common/cmd/280015x_flash_kernel_ram_link。
为 应为在为 F280015x 器件实现 CAN 闪存内核后生成的十六进制文件。 本应用手册(https://www.ti.com/lit/sprad51)讨论了 F28003x 和 F28P65x 的 CAN 闪存内核的实现和使用。 尽管这些内核在默认情况下不支持 F280015x 器件、但了解本应用手册中的一般流程和主要理念将有助于使其适应 F280015x 器件。
此致、
斯凯勒
您好、Skyler:
在 extern void CopyApplication (MCAN_RxBufElement rxMsg)上;
请找到项目结构和错误日志的附件。


e2e.ti.com/.../CAN_5F00_Error.txt
谢谢。
Premkumar. T
尊敬的 Premkumar:
您能否发送一些有关您看到这些错误的项目结构和上下文的信息? 它似乎是多个文件在你的项目定义" Fapi_Flash statusType"。 另外、似乎有些语法错误可能是由于从现有示例中复制/粘贴代码块所致。 下面是给出常见编译错误建议的链接: https://software-dl.ti.com/ccs/esd/documents/sdto_ccs_build-errors.html
此致、
斯凯勒
尊敬的 Premkumar:
有关如何使用 can_flash_programmer 的某些说明、请参阅此文档: www.ti.com/lit/sprad51
内核文件应以十六进制格式提供、而不是作为文本文件提供。 上面的文档显示了如何使用 C2000十六进制实用程序生成它。
如果您更新 内核文件格式、并继续看到没有任何内容刷写到器件中、我建议您逐步完成闪存内核的流程、并辨别它偏离预期行为的位置。 通过向我们提供有关您的代码故障位置的更详细信息、这将帮助我们提供更好的支持。
此致、
斯凯勒
您好@Skyler Baumer:
感谢您的答复。
我们检查并启用了用于内核构建文件的十六进制实用程序

但 CCS Studio 仍然只生成.out 文件、而不生成 hex 文件。
对于现有的可正常工作工程 F28003x 也尝试了相同的方法、CCS 生成的问题也是如此。 输出文件、但不是 hex 文件。
我们仅在处理内核项目文件时才会遇到此问题、而不会处理其他项目文件时遇到此问题。
同时,分享更新的 Kernal 建设项目到一个私人消息您能审查它,并让我们知道吗?
感谢您的大力支持
尊敬的 Shankar:
你是对的,我错了。 这些文件应作为.txt 文件传入、因此应用程序文件也应作为.txt 文件传入。 对于围绕这一主题的困惑、我深表歉意。 要生成.txt 文件、请将此行添加到内核和应用程序工程的编译后处理步骤中: "${CG_TOOL_HEX}""${BuildArtifactFileName}"-boot -sci8 -a -o "${BuildArtifactBaseName}.txt"(请参阅 第3部分 www.ti.com/lit/sprad51中的)。
我通过消息收到了该项目、并将在接下来的几天内对其进行审核。 同时、我相信、逐步制定准则将有助于您诊断您遇到的问题。
此致、
斯凯勒
您好、Skyler:
我尝试使用命令[can_flash_programr.exe -d f280015x -k flash_kernel_ex4_can_flash_kernel.txt -a launchxl_ex1_f2800157_demo.txt]来刷写应用程序文件。 似乎是应用程序正在加载、但未在控制器中刷写。
请找到附件、

谢谢。此致、
Premkumar. T
尊敬的 Premkumar:
要在主机编程器执行期间查看更多信息、请将-v 选项添加到您的参数中。 示例:can_flash_programr.exe–d -k -a -v
这应该使您能够区分内核加载和应用程序加载。 主机编程器执行暂停发生在将内核发送到 F280015x 后、它为器件提供了在发送应用程序之前引导的时间。 PCAN USB 器件在内核加载期间不应呈红色闪烁。 如果是、则 GPIO 配置可能存在错误。 您正在使用哪种配置? 您是否正在使用 Launchpad (LAUNCHXL-f2800157)? 您是否为此使用仿真引导模式?
此致、
斯凯勒
尊敬的 Premkumar:
感谢您提供的信息! 是否在存储器浏览器中设置 EMU_BOOTPIN_CONFIG 和 EMU_BOOTDEF 寄存器? 对于 MCAN、您应该在0xD00输入0xFFFF、在0xD01输入0x5AFF、并在 cpu1brom_boot_modes.h 中的0xD04使用 GPIO 4和5的相应定义。 根据您的屏幕截图、似乎您已根据不同的引导模式更改了默认 GPIO。 因此、您应该在存储器浏览器中输入与地址0xD04处的 MCAN_BOOT_SENDTEST 相对应的任何值。 如果使用 C2000Ware 中 bootROM 代码中的引导模式和 cpu1brom_boot_modes.h 文件、您可以在0xD04处输入0x88来使用映射到 GPIO 4和 GPIO5的 MCAN_BOOT_ALT1_SENDTEST 引导模式。 在存储器浏览器中设置这些值后、通过 XRSn 复位器件并启动主机编程器。
此致、
斯凯勒
您好、Skyler:
感谢您的支持、
对于 MCAN、我已经在存储器浏览器中输入了0xFFFF 0xD00、0x5AFF 0xD01和0x88 0xD04、在存储器浏览器中设置值后、我已经通过 XRSn 复位并点击了"恢复"、 然后我输入命令[can_flash_programr.exe -d f280015x -k flash_kernel_ex4_can_flash_kernel.txt -a launchxl_ex1_f2800157_demo.txt -v]、并检查值是否未 在内存浏览器中更新、在加载文件时它还指示为红色。

谢谢。
Premkumar . T
尊敬的 Premkumar:
0x88是否与您项目中定义的引导模式相对应、以将 GPIO 4和5用作 CANTX 和 CANRX? 您发送的屏幕截图表明定义与 C2000Ware 中的定义稍有不同、因此请验证您是否配置了正确的 GPIO。 如果使用的是 LaunchPad 以及 GPIO 4和5、请确保正确设置 CAN 路由和引导模式选择开关。 本文档将帮助您找到开关: https://www.ti.com/lit/spruj54
CAN 路由开关应设置为 ON (DOWN)、引导模式选择开关(GPIO 24和32)应分别设置为1和0。 有关引导模式选择开关的更多信息、请参阅 https://www.ti.com/lit/spruiy4a第5.3节。
谢谢。
斯凯勒