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.

[参考译文] TMS570LS3137:将XDS110与gdb/openocd配合使用

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/630450/tms570ls3137-using-xds110-with-gdb-openocd

部件号:TMS570LS3137

TMS570

大家好,

我使用的是最新版本的OpenOCD,希望通过XDS110外部调试器硬件连接到我的自定义板。  我有cmsis.cfg 和ti_tms570ls3137.cfg(使用ti_tms570.cfg)文件。  我找不到有关如何设置DAP_TAPID和JRC_TAPID地址的文档。  我在尝试建立连接时也收到以下错误。

命令:

openocd -f ./tms570.cfg

回应:

打开芯片调试器0.9 .0-dev-snapshot (2017年09月28日 -18:48)
根据GNU GPL v2许可
有关错误报告,请参阅
   openocd.sourceforge.net/.../bugs.html
信息:仅一个传输选项;自动选择'CMIS-DAP'
适配器速度:1500 kHz
适配器速度:5 kHz
运行时错误:eMbedded:startup.TCL:160:会话传输为"CMSIS-DAP",但您的配置需要JTAG
程序中'脚本'
在文件"embedded:startup.tcl"中,第58行
位于文件"./TMS570.cfg"第6行
在文件"/home/pollack/openocd-binOLD/target/ti_tms570ls3137.cfg"的第9行
在过程中,'JTAG'调用于文件"/home/pollack/openocd-binOLD/target/ti_tms570.cfg"第24行
在名为“embedded:startup.tcl”的文件中,第165行调用的'default_to_JTAG '
在文件"embedded:startup.tcl"中,第160行

我知道在传输过程中存在匹配错误,但我不知道如何修复标准ti_tms570.cfg文件

文件:

适配器_kHz 1500
适配器_kHz 5.

如果{[信息存在CHIPNAME]}{
   设置_CHIPNAME $CHIPNAME
}其他{
   设置_CHIPNAME TMS570
}

如果{[信息存在ENDIAN]}{
   设置_ENDIAN $ENDIAN
}其他{
   将_ENDIAN设置为大
}

# TMS570有一个ICEpick-C,我们需要在它上使用路由器命令。
源[find target/icepick.cfg]

#主DAP
在获取此文件之前,应设置#DAP_TAPID
如果{[info exists DAP_TAPID]}{
   设置_DAP_TAPID $DAP_TAPID
}
JTAG newtap $_CHIPNAME DAP -irlen 4 -ircapture 0x1 -irmask 0xF -Expected-id $_DAP_TAPID -disable
JTAG configure $_CHIPNAME.DAP -event tap启用"icepick_c_tapenable $_CHIPNAME.JRC 0"

#ICEPIC-C (JTAG路由控制器)
#JRC_TAPID应在获取此文件之前设置
如果{[info exists JRC_TAPID]}{
   设置_JRC_TAPID $JRC_TAPID
}

设置_JRC_TAPID2 0x0B7B302F
设置_JRC_TAPID3 0x0B9.5502万F
设置_JRC_TAPID4 0x0B9.7102万F
设置_JRC_TAPID5 0x0D8A002F
设置_JRC_TAPID6 0x2B8A002F
设置_JRC_TAPID7 0x2D8A002F
设置_JRC_TAPID8 0x3B8A002F
设置_JRC_TAPID9 0x3D8A002F


JTAG newtap $_CHIPNAME JRC -irlen 6 -ircapture 0x1 -irmask 0x3f \
   -Expected-id $_JRC_TAPID \
   -Expected-id $_JRC_TAPID2 \
   -Expected-id $_JRC_TAPID3 \
   -Expected-id $_JRC_TAPID4 \
   -Expected-id $_JRC_TAPID5 \
   -Expected-id $_JRC_TAPID6 \
   -Expected-id $_JRC_TAPID7 \
   -Expected-id $_JRC_TAPID8 \
   -Expected-id $_JRC_TAPID9 \
   -ignore-version
JTAG configure $_CHIPNAME.JRC -event setup "JTAG tapenable $_CHIPNAME.dap"
JTAG configure $_CHIPNAME.JRC -event post-reset "RunTest 100"(JTAG配置$_CHIPNAME.JRC事件重置后"RunTest 100")

# Cortex-R4目标
设置_TARGETNAME $_CHIPNAME.CPU
目标创建$_TARGETNAME cortex_R4 -endian $_ENDIAN \
   -chain-position $_CHIPNAME.DAP -CoreID 0 -dbgbase 0x0.1003万.

# TMS570使用奇特的be-32模式
$_TARGETNAME DAP ti_BE_32_quirks 1.

$_TARGETNAME configure -event gdb-attach {
   Cortex_R4 dbginit
   停止
}

$_TARGETNAME configure -event "reset-Assert "{
   全局_CHIPNAME

   #通过ICEPick声明热系统重置
   icepick_c_wreset $_CHIPNAME.JRC
}

任何帮助或建议都很棒!  我的开发环境是运行Eclipse的Ubuntu。  

谢谢!

Jon

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

    我将把您的帖子转到我们的CCS E2E。 他们将有更好的资源来解决与IDE/仿真器驱动程序相关的问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jon,

    我无法将openocd 0.10 0运行在我的Ubuntu框上,但在Windows上,我可以通过修改现有的配置脚本/board/ti_tmdx570ls31usb.cfg进行连接,如下所示:

    [报价用户="ti_tmdx570ls31_xds110.cfg"]

    适配器_kHz 1500

    源[find interface/CMSIS-Dap.cfg]
    传输选择JTAG
    #source [find target/ti_tms570.cfg]
    源[find target/ti_tms570ls3137.cfg]

    reset_config trst_only

    #init;FTDI_SET_SIGNAL PWR_RST 1;JTAG arp初始化

    [/引述]

    我从您的操作过程中注意到,您正在退出默认传输类型,并且正在配置非常缓慢的adapter_kHz速度。

    请尝试一下,看看它是否适合您。  

    希望这能有所帮助,

    拉斐尔