我可以以某种方式使用这个 XDS100v2 JTAG 仿真器吗?
我购买了 Hawkboard,并寻找 JTAG 仿真器来进行调试。我唯一确定的是 Spectrum Digital XDS100v2,因为引脚匹配,而且我读到过其他人在 Hawkboard 上使用它的情况。我原本希望使用 GCC ARM 工具链和 OpenOCD,但 XDS100v2 显然只能与 TI Code Composer Studio 配合使用。我对此很满意,因为 Hawkboard 无论如何都使用 TI 处理器,而且我认为 TI 编译器能够很好地对其进行优化。在收到 JTAG 仿真器后,我安装了 TI CCSv4...
我绝对讨厌它。
它在我的硬盘驱动器中散布了文件,弄乱了我的用户目录,配置起来非常痛苦,现在它甚至无法正确卸载。我真的非常想切换到 GCC 工具链和 OpenOCD/GDB 进行调试,但我找不到任何方法可以使用 XDS100v2 做到这一点。
最近对此进行了一些讨论 OpenOCD 邮件列表,但看起来许可问题阻止团队提供对 XDS100v2 的直接支持。我还发现了与讨论大约同时进行的 Git 提交,其中似乎包含支持 XDS100v2 的代码,但我不知道这是否是官方的。我也无法真正对其进行测试,因为 XDS100v2 实际上并未正确安装。我必须安装 CCSv4 才能获取驱动程序,但我拒绝在另一台计算机上执行此操作,因为我不希望它像第一台计算机一样混乱。讨论提到XDS100v2实际上只是一个FTDI设备,所以我尝试使用通用FTDI驱动程序,但Windows无法识别它。
我想我要问的是:是否有某种方法可以通过某种方式使用通用 FTDI 驱动程序或其他方法轻松让 OpenOCD 支持 XDS100v2?我花了 80 美元买了这个 JTAG 仿真器,我真的不想让它浪费掉。
I bought a Hawkboard and went looking for a JTAG emulator to use for debugging. The only one I seemed certain about was the Spectrum Digital XDS100v2, because the pins matched and I had read about others using it with a Hawkboard. I had hoped to use a GCC ARM toolchain and OpenOCD, but the XDS100v2 apparently only works with TI Code Composer Studio. I was fine with that, because the Hawkboard uses a TI processor anyway and I figured a TI compiler would be able to optimize really well for it. After I received the JTAG emulator, I installed TI CCSv4...
I absolutely HATE IT.
It has scattered files throughout my hard drive, cluttered up my user directory, is a massive pain in the ass to configure, and now it won't even uninstall properly. I really, really want to just switch to a GCC toolchain and OpenOCD/GDB for debugging, but I can't find any way to do that with the XDS100v2.
There was some recent discussion about this on the OpenOCD mailing list, but it looks like licensing issues prevent the team from including direct support for the XDS100v2. I also found a Git commit made around the same time as the discussion that appears to include code for supporting the XDS100v2, but I don't know if this is official or not. I can't really test it, either, because the XDS100v2 doesn't actually install correctly. I have to install CCSv4 to get the drivers, but I refuse to do this on my other machine because I don't want it to get cluttered like the first one. The discussion mentions that the XDS100v2 is actually just a FTDI device, so I tried using a generic FTDI driver, but Windows didn't recognize it.
I guess what I'm asking is this: Is there some way that I can easily get OpenOCD to support the XDS100v2 by somehow using a generic FTDI driver or another method? I spent $80 on this JTAG emulator and I really hate to let it go to waste.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
让 OpenOCD 来处理这个问题会很棘手......
首先,您需要将 XDS100v2 的 USB ID 添加到驱动程序 inf 文件中。请注意
您必须在 FTDI 驱动程序和 libusb 驱动程序之间进行选择,具体取决于您编译 OpenOCD 的方式。如果您下载了二进制 OpenOCD 版本,则应该使用它附带的驱动程序。一旦您将正确的 USB 供应商和产品 ID 添加到 inf 文件中,驱动程序就会安装(您必须告诉 Windows 正确的路径)。仅在 Windows 平台上需要此步骤。
设备管理器将在其“详细信息”页面上将 ID 号作为“硬件 ID”属性告诉您。是 VID_xxxx 和 PID_yyyy,其中 xxxx 是供应商 ID (VID),yyyy 是产品 ID (PID)。
下一步是告诉 OpenOCD USB ID(与您在 .inf 文件中使用的相同) - 查看具有“interface ft2232”行的其他 interface/*.cfg 文件。 “布局”很棘手,
只需对这些进行尝试和错误即可。
最后一步是进行完整的主板定义 - 寻找包含相同或相似 CPU 芯片的主板。如果重置不起作用,请尝试“reset_config none”。
Getting OpenOCD to work with this will be tricky...
First you need to add the USB IDs of you XDS100v2 to the driver inf file. Please note that
you have to choose between the FTDI drivers and libusb drivers depending how you compiled OpenOCD. If you downloaded a binary OpenOCD version, you should use the drivers shipped with it. Once you added the correct USB Vendor and Product ID to inf file, the driver will install (you have to tell windows the correct path). This step is only needed on Windows platforms.
The device manager will tell you the ID numbers on its "Details" page as "Hardware IDs" Property. Is VID_xxxx and PID_yyyy where xxxx is the Vendor id (VID) and yyyy is the Product id (PID).
Next step is to tell OpenOCD the USB ID (the same you used in the .inf file) - look at other interface/*.cfg files that have the line "interface ft2232". The "layout" is tricky,
just use try-and-error on these.
Final step is to make a complete board definition - look for boards that contain the same or similar cpu chips. If reset does not work, try "reset_config none".