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.

[参考译文] TMS570LC4357-EP:在定制电路板上对芯片进行编程时出错

Guru**** 2478765 points
Other Parts Discussed in Thread: TMS570LC4357, HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board

器件型号:TMS570LC4357-EP
主题中讨论的其他器件:TMS570LC4357HALCOGEN

您好!

我们目前正在开发定制板、在使用 XDS200对电路板进行编程时遇到了问题。

我们能够使用 cJTAG 4引脚方法在开发板上加载程序、我们也在定制板上使用该方法。

我们似乎可以通过进入调试模式(目标->启动选定的配置->连接到目标)连接到目标并运行当前存储器代码、但 PC 始终位于地址0x00000004上。

我尝试通过进入 Tools->Memory Fill 来更改存储器、并尝试在存储器0x00000000处进行更改、但遇到存储器写入错误("存储器映射阻止写入")

我们检查所有复位、它们处于高电平状态(3.3V)、并且电源线连接良好。 TEST 引脚也连接到 GND。 目标配置中的 JTAG 测试例程工作正常、不会产生任何错误。

以下是尝试加载程序时显示的错误:

CortexR5: Can't Run Target CPU: (Error -242 @ 0x0) A router subpath could not be accessed. The board configuration file is probably incorrect. (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Trouble Halting Target CPU: (Error -2064 @ 0x0) Unable to read device status. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.3.0.00042) 
CortexR5: Unable to determine target status after 20 attempts
CortexR5: Failed to remove the debug state from the target before disconnecting.  There may still be breakpoint op-codes embedded in program memory.  It is recommended that you reset the emulator before you connect and reload your program before you continue debugging
CortexR5: File Loader: Memory write failed: Could not read 0x080002F4: target is not connected


如果您知道可能发生的错误、那会很棒、因为我们未能确定可能出现的问题。

非常感谢!

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

    您好!

    [引用 userid="487873" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board ]]我们可以使用 cJTAG 4引脚方法在开发板上加载程序,我们也在定制板上使用该方法。

    我不清楚你的一些发言。 您之前说过 cJTAG 4引脚方法。 首先 、cJAG 是基于 IEEE1149.7的2引脚方法、而不是4引脚 JTAG (IEEE 1149.1)。 在 cJTAG 中、TMS、TDI 和 TDO 被复用。 TMS570LC4357不支持 cJTAG。 它仅支持 包含 nTRST 的传统 JTAG。  

    如果我理解正确、您可以使用 XDS200将程序正确加载到 EVM 板上的 MCU 闪存、但不能加载到您的定制板。 是这样吗?

    [引用 userid="487873" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board 我们似乎能够通过进入调试模式(目标->启动选定的配置->连接到目标)连接到目标并运行当前存储器代码、但 PC 始终位于地址0x00000004上。

    我尝试通过进入 Tools->Memory Fill 来更改存储器、并尝试在存储器0x00000000处进行更改、但遇到存储器写入错误("存储器映射阻止写入")

    您无法在从0x0开始的地址处填充存储器、因为这是一个闪存存储器。 您需要使用闪存编程器将代码加载到闪存中、该闪存占用从0x0开始的存储器地址。 您只能对 SRAM 执行内存填充。 SRAM 从0x08000000开始、而不是从0x0开始。  

    [报价 userid="487873" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board ]我们检查所有复位、它们处于高电平状态(3.3V)、并且电源线连接良好。 TEST 引脚也连接到 GND。 目标配置中的 JTAG 测试例程工作正常、不会产生任何错误。

    再次请确认您是否可以使用 XDS200成功将简单程序加载到 EVM 板、HDK 或 LaunchPad 板。 如果您可以成功地将程序加载到 EVM 板、则意味着您的目标配置应该正确。 唯一的区别是 PCB。

    我建议您:

    -将 TCLK 速度更改为较低的值。 这会产生影响吗?

    -比较您的定制电路板原理图和 EVM 原理图、您能找到任何细微差异吗?

    以下链接提供了有关 JTAG 故障排除的指导。 搜索控制台日志中报告的错误代码-1170和-242。  

    https://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html

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

    您好!

    非常感谢您的快速回答、我非常感谢。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161")我不清楚您的一些陈述。 您之前说过 cJTAG 4引脚方法。 首先 、cJAG 是基于 IEEE1149.7的2引脚方法、而不是4引脚 JTAG (IEEE 1149.1)。 在 cJTAG 中、TMS、TDI 和 TDO 被复用。 TMS570LC4357不支持 cJTAG。 它仅支持 包含 nTRST 的传统 JTAG。  [/报价]

    我选择了这种方法、在 CCS 中称为 cJTAG 4引脚标准模式(我认为这是不带 nTRST 的 JTAG 接口)、我可以使用这种方法对 HDK 板进行编程(我只连接了 TDI/TDO/TMS-TCK/GND/VREF 引脚)。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]如果我理解正确,您可以使用 XDS200将程序正确加载到 EVM 板上的 MCU 闪存中,但不能将其加载到定制板上。 是这样吗?

    完全正确。 即使在4引脚 JTAG 模式下也是如此。 在当前版本中、我们无法访问 nTRST、 只需将其上拉即可。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]您无法在从0x0开始的地址填充存储器、因为这是一个闪存。 您需要使用闪存编程器将代码加载到闪存中、该闪存占用从0x0开始的存储器地址。 您只能对 SRAM 执行内存填充。 SRAM 从0x08000000开始、而不是从0x0开始。  [/报价]

    我想我本来可以直接从调试模式中做到这一点、感谢您的解释。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]再次请确认您是否可以使用 XDS200成功将简单程序加载到 EVM 板、HDK 或 LaunchPad 板。 如果您可以成功地将程序加载到 EVM 板、则意味着您的目标配置应该正确。 唯一的区别是 PCB。

    我确认能够使用4引脚模式对 HDK 进行编程。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]-将 TCLK 速度更改为较低值。 这会产生影响吗?[/引述]

    我们已经尝试过、但遗憾的是、它没有产生影响。 出现相同的错误。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]比较您的定制电路板原理图和 EVM 原理图、您能找到任何细微的差异吗?

    我们还找不到任何不同之处,但由于我们能够进入调试模式并读取寄存器,但只有程序加载部分不起作用,您是否会对哪一部分可能出错有所了解?

    以下是调试模式下"测试连接"例程的一些日志、以及调试会话中的视图:


    [Start: Texas Instruments XDS2xx USB Debug Probe]
    
    Execute the command:
    
    %ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -S integrity
    
    [Result]
    
    
    -----[Print the board config pathname(s)]------------------------------------
    
    ********************************
    
    -----[Print the reset-command software log-file]-----------------------------
    
    This utility has selected a 560/2xx-class product.
    This utility will load the program 'xds2xxu.out'.
    The library build date was 'Jan 31 2021'.
    The library build time was '19:18:41'.
    The library package version is '9.3.0.00042'.
    The library component version is '35.35.0.0'.
    The controller does not use a programmable FPGA.
    The controller has a version number of '13' (0x0000000d).
    The controller has an insertion length of '0' (0x00000000).
    This utility will attempt to reset the controller.
    This utility has successfully reset the controller.
    
    -----[Print the reset-command hardware log-file]-----------------------------
    
    This emulator does not create a reset log-file.
    
    -----[Perform the Integrity scan-test on the JTAG IR]------------------------
    
    This test will use blocks of 64 32-bit words.
    This test will be applied just once.
    
    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.
    
    The JTAG IR Integrity scan-test has succeeded.
    
    -----[Perform the Integrity scan-test on the JTAG DR]------------------------
    
    This test will use blocks of 64 32-bit words.
    This test will be applied just once.
    
    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.
    
    The JTAG DR Integrity scan-test has succeeded.
    
    [End: Texas Instruments XDS2xx USB Debug Probe]

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759161 #3759161"]

    以下链接提供了有关 JTAG 故障排除的指导。 搜索控制台日志中报告的错误代码-1170和-242。  

    https://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html

    [/报价]

    我将尝试在内部时钟上启动、并查看它是否会产生任何差异、如 您的链接中针对错误-1170所指定( 此 e2e 论坛主题中介绍了尝试解锁 Hercules 器件的过程。) 。

    非常感谢您的支持

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

    好消息是、在 OSCIN 和 OSCOUT 之间创建短路并按下 nPORRST 之后、我能够刷写存储器。 但是、一旦芯片复位、它就不再工作了。 我们使用的是16MHz 振荡器和推荐的电容器。 连接开尔文接地、就像在 HDK 板的原理图上一样。

    您是否对它的来源有任何想法?

    非常感谢

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

    您好!

     我没有 XDS200。 我在 LaunchPad 上只有板载 XDS110、但想法是一样的。  

     1.启动目标配置后。 右键单击 Texas Instrument XDS110 Debug Probe_0/.... 在您的情况下、它应该显示 XDS200。 右键单击它。  

     2.选择"显示所有内核"。

     3.展开"Non Debuggable Devices"、您会看到如下所示的类似内容。  

     4.右键单击第一个显示"IcePick"的选项、然后选择"Connect Target"。 这是手动连接到 IcePick。 我相信这个步骤将适合您、因为您已经使用"测试连接"进行了验证、并且 JTAG 没有问题。

     5.如果上述步骤有效,请手动右键单击"DAP"。 您能否连接到 DAP。 如果无法连接到 DAP、则 DAP 控制器存在问题。 您需要回答一个问题。

     a.您之前是否已成功将任何代码编程到定制板、但最近才失败。 或者您根本无法对任何代码进行编程?

     如果您能够在一个时间点进行编程、但最近发生了故障、那么您是否记得之前编程的代码可能阻止了与目标的连接。  

     如果您完全无法进行编程、我建议您尝试另一个新芯片。 它能起作用吗? 或者、您是否有另一个可以尝试的定制?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="487873" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759326 #3759326">好消息:在 OSCIN 和 OSCOUT 之间创建短路并按下 nPORRST 后、我能够刷写内存。 但是、一旦芯片复位、它就不再工作了。 我们使用的是16MHz 振荡器和推荐的电容器。 连接开尔文接地、就像它在 HDK 电路板的原理图上一样。

    我们的帖子看起来彼此交叉。 请阅读我之前的回复。

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

    您好!

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759329 #3759329"]5. 如果上述步骤有效、请手动右键单击"DAP"。 您能否连接到 DAP。 如果无法连接到 DAP、则 DAP 控制器存在问题。 您需要回答一个问题。

    如果我不采用"短路振荡器"方法、这在这个阶段确实是失败的。 我们正在采用这种方法、然后可以连接到 DAP。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759329 #3759329"]

     如果您能够在一个时间点进行编程、但最近发生了故障、那么您是否记得之前编程的代码可能阻止了与目标的连接。  

     如果您完全无法进行编程、我建议您尝试另一个新芯片。 它能起作用吗? 或者、您是否有另一个可以尝试的定制?

    [/报价]

    在上一条消息之前、我从未成功对电路板进行编程、我还尝试了其他一些电路板、但问题完全相同。 (然后我会强烈认为这是一个硬件问题)。

    谢谢你

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

    您好!

     -您能否探测 HDK 和电路板之间的 OSCIN/OSCOUT? 您在两者之间看到了什么区别?  

     -在您的目标配置中,您能否尝试使用 JTAG 而不是 cJTAG 模式?  

     -我想您的定制板和 HDK 之间的区别是 nTRST。 我不知道这种差异是否足以导致问题。 您能否探测 nTRST 引脚输入并比较 HDK 与电路板之间的差异? 是否可以让调试探针 驱动 nTRST? 有什么不同吗?

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

    您好!

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759381 #3759381"]您能否探测 HDK 和电路板之间的 OSCIN/OSCOUT? 您在两者之间看到了什么区别?  [/报价]

    振荡器、HDK 和定制板都以16MHz 的频率振荡、振幅为2V、因此我在这里看不到任何差异。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759381 #3759381")在您的目标配置中,能否尝试使用 JTAG 而不是 cJTAG 模式?  [/报价]

    它不会改变任何东西、误差仍然相同

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759381 #3759381"]我想您的定制板和 HDK 之间的区别是 nTRST。 我不知道这种差异是否足以导致问题。 您能否探测 nTRST 引脚输入并比较 HDK 与电路板之间的差异? 是否可以让调试探针 驱动 nTRST? 它是否起作用?[/报价]

    我从 HDK 电路板上断开了 nTRST 引脚、并且可以连接、加载程序并正确对其进行调试、因此我希望两个电路板上的配置现在与 nTRST 引脚有关。 我甚至在 HDK 上强制它进入高电平状态、我没有任何问题。

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

    您好!

     我现在真的不知道是什么问题。

     -您之前说过您尝试降低 TCK 频率? 您尝试了多低的电平? 您可以尝试500kHz 频率吗?

     您能否仔细检查所有电源引脚? 有这个帖子显示了 VCCP 管脚被错误地连接至1.2V 而不是3.3V、从而导致连接失败。  https://e2e.ti.com/support/microcontrollers/hercules-safety-microcontrollers-group/hercules/f/hercules-safety-microcontrollers-forum/582211/ccs-rm48l540-error-241---jtag---device-locked。请仔细检查所有电源引脚、而不仅仅是 VCCP。  

     -是否可以将 HDK 上的 MCU 与您的定制板交换。 我理解这一步骤可能会更难完成。  

      

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

    您好!

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759447 #3759447"]您之前说过您尝试降低 TCK 频率? 您尝试了多低的电平? 您可以尝试500kHz 频率吗?[/quot]

    我尝试降低频率、我尝试了10MHz、1MHz、50kHz、但都不起作用。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759447 #3759447")您能否再次检查所有电源引脚? 有这个帖子显示了 VCCP 管脚被错误地连接至1.2V 而不是3.3V、从而导致连接失败。  https://e2e.ti.com/support/microcontrollers/hercules-safety-microcontrollers-group/hercules/f/hercules-safety-microcontrollers-forum/582211/ccs-rm48l540-error-241---jtag---device-locked。请仔细检查所有电源引脚、而不仅仅是 VCCP。  [/报价]

    我只进行了两次检查、VCCP 连接到3.3V、VCC_IO 连接到3.3V、VCCPLL 连接到1.2V、VCC_CORE 连接到1.2V (我认为是对的、如果我错了、请纠正我)。

    [引用 userid="93620" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3759447 #3759447">是否可以将 HDK 上的 MCU 与您的定制板交换。 我理解这一步骤可能会更难完成。  [/报价]

    由于错误发生在多个芯片上(在我们的定制板上)、我认为问题来自我们的一方、但我们还不知道错误来自哪里。 如果可能、我们希望避免将芯片从我们的定制板交换到 HDK。

    我们将继续进行调试、并告诉您是否发现了问题。

    感谢您的支持!

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

    从我们的角度进行了更新:

    一旦我们在 OSCIN 和 OSCOUT 引脚之间创建短路、我们就能够对电路板进行编程。 我们现在在板上有一个"闪烁 LED"程序、我们可以清楚地看到它从16MHz (振荡器时钟)变为10MHz (内部时钟)。 此外、我们似乎无法设置 PLL。 设置时钟乘法器时、似乎没有考虑到它(我们看不到 LED 闪烁频率增加)。

    此外、即使在 HALCoGen 的 GCM 菜单中设置了振荡器上的所有内容(没有 PLL)、如果不在时钟上进行短路、我仍然无法加载程序。 我找到了这个线程、我们将尝试更改电容器并查看它的运行情况。  e2e.ti.com/.../tms570lc4357-pll-jtag-flash-programming-stability

    我有一种强烈的感觉、就是硬件方面的时钟/PLL 问题、但我还找不到任何合理的解释。

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

    Johan、您好!

    [引用 userid="487873" URL"~/support/microcontrollers/other-microcontrollers-group/other/f/other-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3760673 #3760673"]我找到了此主题、我们将尝试更改电容器并查看其运行情况。  e2e.ti.com/.../tms570lc4357-pll-jtag-flash-programming-stability

    感谢您找到此帖子。 我自己甚至没有找到这篇文章。 请告诉我电容器是否确实是问题的原因。 同时、您是否介意在 OSC0和 OSC1上共享外部负载电容、它们与 HDK 相比如何?

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

    您好!

      我们在初始设计中仅使用10pF 的电容器、我们刚刚尝试使用20pF 的电容器、它不会发生任何变化、我们仍然有相同的问题。

    我们刚刚在 HDK 的原理图上看到有两个 VCCPLL 引脚、包括 J14、数据表中未将其引用为 VCCPLL 引脚。 它是否需要通过与 P11类似的同一电容器进行连接?


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

    您好!

     我认为它不需要像 P11那样进行连接、但应该像其他 VCC 引脚那样连接到 VCC 1.2V 电源。  

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

    您好!
    为了研究我们的定制板、我们创建了一个非常小的电路板、其中仅包含基本器件、但我们现在根本无法连接到 JTAG:

    ---- [打印重置命令软件日志文件]-----------------

    此实用程序已选择了560/2xx 类产品。
    此实用程序将加载程序'xds2xxu.out'。
    库构建日期为"2021年1月31日"。
    库构建时间为'19:18:41'。
    库软件包版本为'9.3.0.00042'。
    库组件版本为'35.0.0'。
    控制器不使用可编程 FPGA。
    控制器的版本号为"13"(0x0000000d)。
    控制器的插入长度为"0"(0x00000000)。
    此实用程序将尝试重置控制器。
    此实用程序已成功重置控制器。

    ---- [打印重置命令硬件日志文件]-----------------

    此仿真器不会创建复位日志文件。

    ---- [发生了错误,该实用程序已中止]-----

    此错误由 TI 的 USCIF 驱动程序或实用程序生成。

    值为'-233'(0xffff17)。
    标题为"SC_ERR_PATH_Broken (SC_ERR_PATH_COMPLETE")。

    说明如下:
    JTAG IR 和 DR 扫描路径不能循环位、它们可能会损坏。
    尝试扫描 JTAG 扫描路径失败。
    目标的 JTAG 扫描路径似乎已断开
    卡在一个或卡在零的故障。

    [结束:德州仪器 XDS2xx USB 调试探针]

    以下是原理图:


    nPORRST_H 上的跳线被置位、J14跳线被连接。 1.2V 上的电流消耗为10mA、3.3V 上的电流消耗为48mA。

    振荡器在16MHz 时振荡、nERROR 引脚为高电平状态。 TDO 管脚似乎没有输出。

    你有 什么想法吗?

    感谢您的支持!

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

    Johan、您好!

     根据您的扫描链测试、 扫描链似乎在某种程度上损坏。 看一下您的 JTAG 接头、它似乎不是我以前见过的接头。 这是什么? 有关详细信息 、请参阅此链接中的 JTAG 连接器 http://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_jtag_connectors.html。 另请查看此链接中的 JTAG 故障排除。  https://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html

     请确保这不是连接器问题。 此外、探测 TCK、TMS、TDI、并确保您确实将这些信号驱动到 MCU、并探测 TDO 引脚以查看任何信号活动。  

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

    您好!

    它是10引脚 ARM 连接器的扩展版本(STM 也使用)。


    如您所见、连接器的中间部分与 XDS200编程器随附的10引脚适配器相同。

    我们检查了 TDO/TS/TCK、信号看起来很好。

    您还有其他想法吗?

    谢谢你

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

    您好!

     好的。 就我个人而言、我没有看到这样的连接器。 但我想它在您之前的电路板上工作、尽管 根据您的早期响应、部分工作 OSCIN/OSCOUT 短路。  

     nTRST 的状态是什么? 您可以上拉至高电平吗?

     -测试的状态是什么? 是低电平吗?

     -你在 TDO 上看到了什么? 是扁平线路还是一些信号?

     -您是否正确焊接了 MCU? 请检查连接是否松动。  

     - 您是否有另一个可以换用到电路板的备用 MCU (可以选择已知良好的器件)、它是否显示了相同的问题? 我想确保它不是一个隔离式 MCU 问题。  

      

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

    您好!

    是的、实际上、两个电路板上的连接器完全相同、因此这不是问题。

    - nTRST 为高电平、并上拉至高电平(3.28V)。

    - TEST 引脚为低电平(0.047mV)
    TDO 上的线在不同的阶段将变为1和0,所以它肯定不是平坦的(TMS 是一样的)。 只有 TDI 完全平坦
    -如何检查 BGA UC 下的松散连接?
    我们制造了两块电路板,两块电路板都有相同的问题,因此我希望两个处理器不太可能有相同的问题。

    谢谢你们的支持,我希望我们能很快找到这个问题

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

    TDI 由调试探针驱动、是 JTAG 接口的输入。 如果调试探针未将 TDI 正确驱动到 MCU、则可能会解释问题。 您有什么调试探针? 是否有另一个调试探针可供尝试?

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

    您好!

    我们加倍检查所有内容、并且我们发现 nTRST 引脚的布线存在问题、而且 由于导线损耗、1.2V 线路上的电源电压和电流限制太低。

    现在、我们能够正确地对我们制造的小型测试板进行编程、因此我们希望我们能够使定制板正常工作、因为我们的两种电路板都有相同的原理图。

    到目前为止、我们一直处于 PLL 无法在定制板上工作的状态、我们不知道这个问题。 石英的连接方式与测试板上的连接方式相同、但电流消耗没有增加、并且该板在振荡器而非 PLL (16MHz 而非300MHz)上运行。 同样、测试板和开发板上的相同程序也可以正常工作。

    如果您有任何想法,请随时与我们分享:)

    我会随时向您更新结果

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

    您好!

    在进行更多测量后、我们发现定制板上的 TMS570LC4357将 nRST 拉至1.128V、而测试板上不会发生这种情况。

    您是否对其原因有任何了解? 能否解释一下 PLL 不工作的事实?

    我们将继续调查、并随时向您提供最新信息。

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="487873" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3779217 #3779217"]我们现在能够正确地对我们制造的小型测试板进行编程,因此我们希望我们能够使定制板正常工作,因为我们的两种板都有相同的原理图。

    很高兴您解决了测试板问题。  

    [引用 userid="487873" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1017213/tms570lc4357-ep-error-while-programming-the-chip-on-custom-board/3779299 #3779299"]进行更多测量后、我们发现定制板上的 TMS570LC4357将 nRST 拉至1.128V、而测试板上不会发生这种情况。

    您是否对其原因有任何了解? 它能解释一下 PLL 不工作的事实吗?

    nRST 上是否有上拉至3.3V 的电压? 您的 nRST 在我看来是浮动的。 您能否显示 nRST 的原理图? nRST 是一个双向信号。 如果 MCU 内有任何复位事件、nRST 将被驱动为低电平。 但它也可以由外部驱动。 如果您没有上拉至3.3V 的电压、则尽管引脚上有内部弱上拉电阻、但它可以悬空。 如果您仍然可以连接到目标、您能否读出 SYSESR 寄存器?

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

    Johan、您好!

     希望您取得一些进展。 只是想给大家一个机会、我将在下周休假、无法回答论坛问题。  

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

    您好、Charles、

    感谢您的意见。 我们检查了该器件、但遗憾 的是、MCU 上连接的唯一方法是对振荡器短路、因此 SYSESR 寄存器为0x00、全局寄存器为0x0301 (意味着 PLL 误差和振荡器误差)、因此它对我们没有太大帮助。

    nRST 确实是通过一个上拉电阻器连接的、这不是问题。

    经过几个小时的测试后、我们决定用示波器观察 nPORRST 线路、我们发现在 PLL 上切换时、MUC 的高电流需求会导致电源线路上出现微小的压降、 由于某些安全电路、它触发了 MUC 的 nPORRST。 然后、在很短的时间内定期调用复位、因此唯一需要注意的方法是查看振荡器上的复位(电源电流看起来良好且稳定)。

    到目前为止、我们执行的所有其他测试都将变得很好。

    非常感谢您的参与和支持,我非常感谢!

    周末愉快、假期愉快。 )