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.
大家好、
我正在尝试使用 usb_fash_programr.exe 应用程序升级 CPU1和 CPU2中的固件、在 CCS 和 JTAG 仿真器 XDS200上工作时遇到一些问题。我使用的命令行为:
usb_flash_programr.exe F2837xD_usb_flash_kernels_cpu01.dat blinky_dc_cpu01.dat F2837xD_usb_flash_kernels_cpu02.dat blinky_dc_cpu02.dat
1)有时我可以成功发送前三个文件、但在发送第四个文件时、CPU2执行在 函数 c2Brrom_handle_idle_lpm 中的指令 asm (" ESTOP0")处停止:
然后、如果我快速恢复 CPU2执行、我还可以发送第四个文件、以便升级成功:
我还可以看到 CPU1闪烁和 CPU2闪烁应用正在运行、因为 F2837x controlCARD R1.3中的 LED 闪烁。
2) 2)有时我只能发送第一个文件、然后出现"Error 枚举器件接口":
然后、如果我停止 CPU1和 CPU2执行、我可以在 CCS 中看到以下内容:
CPU1执行在 while (g_UsbRxBuffer =0){;}在内核函数 USB_GetWordData 中停止:
在我看来、它正在等待 USB 缓冲器被填满、因此我拔下 USB 连接器并重新插入。 然后 、我尝试通过再次执行 usb_fash_programr.exe 应用程序来恢复升级:
usb_flash_programr.exe F2837xD_usb_flash_kernels_cpu01.dat blinky_dc_cpu01.dat F2837xD_usb_flash_kernels_cpu02.dat blinky_dc_cpu02.dat
然后、操作失败:
我可以看到、CPU1的执行在内核中的 Example_Error 函数处停止:
有人能帮我解决这些问题吗?
非常感谢您的参与、
Andreu
您好、Vamsi、
非常感谢您的快速回答。
我已经阅读过这篇文章、我认为我正在遵循主要步骤。 您认为我错过了一个重要问题吗? 哪一个?
对我来说、这篇文章看起来没有关闭、因为上次 Shef 的消息从未得到回复。
此致、
Andreu
您好、Vamsi、
我很抱歉。 我没有意识到有更多的页面、我可以使用"前进"按钮查看它们。
正如您所说、在阅读第4页后、我设法再次构建 usb_flash_programr.exe 应用程序、增加 了 USB_TIMEOUT_MS 常量的值。
我现在可以成功发送文件、但在发送第四个文件时、CPU2执行会在 函数 c2Brrom_handle_idle_lpm 中的指令 asm (" ESTOP0")处持续停止。然后、我快速恢复 CPU2执行、我也可以发送第四个文件、以便升级成功。 我想它在 ESTOP0指令处停止、因为仿真器已连接。 我是对的吗?
无论如何、我不确定这是否是解决方案、因为我已经进行了多次测试、 USB_TIMEOUT_MS 常量的值甚至低于原始值(5000ms)、并且工作方式相同、现在没有错误。 也许、它也与我的计算机硬件或其工作负载有关。 这需要我这边做更多的测试。
另一方面、我还有关于 USB 固件升级的其他问题:使用 serial_flash_programming 应用程序可以锁定/解锁 DCSM 区域 Z1和 Z2。 是否可以通过 USB 实现相同的操作?
非常感谢您的参与、
Andreu