问题标签 [jtag]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2890 浏览

python - 使用标准输入管道控制 Windows 控制台应用程序

我正在尝试使用 subprocess 模块从 Python 控制控制台应用程序(Segger 的 JTAG 应用程序)。应用程序在标准输出上表现正确,但似乎没有读取标准输入。如果启用 shell,我可以输入输入并控制应用程序,但我需要以编程方式执行此操作。相同的代码适用于向 cmd.exe 之类的命令发出命令。

我猜是直接读取键盘而不是标准输入。有什么想法可以发送应用程序输入吗?

0 投票
1 回答
1255 浏览

exception - ARM9 SVC_STACK 超出范围?

我正在使用 IAR 工作台工具链在嵌入式系统中调试一些奇怪的 ARM 异常。有时,当异常被捕获时,SVC_STACK 被报告为超出范围(非常超出范围!)这是相关的,还是只是 J-Link JTAG 调试器的工件?SVC_STACK 是做什么用的?它设置为 0x1000 大小,但是当它超出范围时,它在我们的堆区域中。谢谢!

0 投票
1 回答
1685 浏览

debugging - 将 Trace32 与 Qualcomm FFA 一起使用

有谁知道有关使用 Lauterbach JTAG/Trace32 在 Qualcomm FFA 上调试 BREW 和/或 BMP 应用程序的任何资源(例如 .cmm 脚本、指令等)?

谢谢。

0 投票
2 回答
1256 浏览

avr - 如何使用 Linux 或 Mac 对 AVR Raven 进行编程?

对这些进行编程的本教程从使用 Windows 框对 Ravens 和 Jackdaw 进行编程开始。我可以在 Linux 或 OS X 机器上使用 avrdude 执行这些初始步骤吗?如果是这样,怎么做?如果我只是尝试,是否有将硬件变砖的风险?

我有一个 USB JTAG ICE MKii 克隆,它应该适用于此。

我对 AVR 完全陌生,但在 Linux 或 OS X 上的 C/C++ 编程方面非常有经验,包括内核编程……所以任何提示都会受到赞赏,我可以阅读手册页,但前提是我知道我在找什么。

0 投票
3 回答
1653 浏览

usb - USB AVR JTAG-ISP 设备驱动程序

我有一个名为 USB AVR JTAG-ISP v. 1.2 的编程设备。

我在哪里可以找到驱动程序和好的 IDE?

0 投票
2 回答
625 浏览

gdb - 与 Hawkboard 和 OpenOCD 一起使用的 JTAG 仿真器?

我想尝试使用Hawkboard进行裸机 ARM 编程,但部署过程看起来很糟糕。我对此完全陌生,所以我可能会误解说明,但看​​来我必须使用一个名为 AISgen 的程序来转换二进制文件,然后通过 UART 使用 u-Boot 引导并将 AIS 二进制文件复制到内存中。不仅每次我进行更改时都要做很多事情,而且我也无法使用 GDB 进行调试。

我能找到的最佳解决方案是 JTAG。但是这些 JTAG 仿真器的价格看起来很荒谬。我什至不确定哪些可以与 Hawkboard 一起使用,哪些不能。到目前为止,我最好的选择似乎是Flyswatter,但引脚布局不同。

基本上,我需要一些相对便宜且可与 Hawkboard 和 OpenOCD 配合使用的东西。

有什么建议么?或者还有其他方法可以做到这一点,也许?

0 投票
1 回答
3363 浏览

arm - 我能以某种方式使用这个 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?我在这个 JTAG 仿真器上花了 80 美元,我真的不想让它浪费掉。

0 投票
3 回答
2176 浏览

avr - AVR JTAGICE mkII

原装 Atmel jtag 编程器售价 300 美元。

http://www.atmel.com/dyn/products/tools_card_v2.asp?tool_id=3353

http://search.digikey.com/scripts/DkSearch/dksus.dll?site=us&lang=en&mpart=ATJTAGICE2

你推荐我哪个克隆?它们是 100% 的克隆吗?(与 avr studio、相同的 fw 等合作)

谢谢。

0 投票
4 回答
11695 浏览

debugging - 在 Cortex-M3 CPU 上通过 printf 进行输出调试,在 BKPT 指令处停止 + 关于 JTAG 和 sw 端口的混淆

我有一个 Keil ULINK2 USB 仿真器盒连接到我板上的JTAG连接器,它与板载 Cortex-M3 CPU(TI/Stellaris/LuminaryMicro LM3S 系列)配合良好。似乎 JTAG 和 SWJ-DP 端口在这些 CPU 上共享相同的引脚(以及板上的连接器)。一个似乎没有 ITM (printf) 功能,另一个则有。

以前的固件人一直使用 stdio 转 UART(串口),但我需要释放串口,以便调试消息不会干扰发送/接收到/从串口的其他数据,因此我需要跟踪消息去别处。可悲的是,我在这块板上只有一个串行端口。我认为这个 CPU 中的 ITM(跟踪)功能意味着我可以将调试 printf 消息直接发送到我的调试器/IDE(Keil uVision)。TI/Stellaris CPU 文档将此功能称为“串行线 JTAG 调试端口 (SWJ-DP)”,据我所知,对它的支持绝对是 Keil uVision IDE 中实现的一个功能。

在我的代码中添加一条 printf 消息会导致我的代码在我开始调试时锁定。锁定似乎在链接到我的应用程序的 RTL 库中,在 BKPT 指令的函数 _sys_open 中:

以上似乎是由调用的代码的一部分__rt_lib_init_stdio_1

到底是怎么回事?我不知道 BKPT 是做什么的。我认为它会引发一个软件断点,然后应该由调试器处理?Keil/ARM ULINK2 软件和硬件不应该已经为此配置了吗?是否有一些技巧可以使 debug printf 与 Keil JTAG/sw 端口一起工作?

我不确定 sw 和 JTAG 端口之间的区别是什么。sw 到底是什么意思,我相信它指的是板上 JTAG 物理连接器的两种可能模式之一,其中 JTAG 是一种经典但更受限制的模式,没有跟踪支持,而 sw 模式在不向 JTAG 添加任何引脚的情况下增加了跟踪支持连接器布局?但这是嵌入式系统,神秘是常态。我是 Cortex-M3 开发的新手,自从旧的 ARM7TDMI 时代以来,很多这些东西对我来说都是新的。但是 Keil uVision 会打印出以下消息:“ITM 仅适用于 SW 端口,不适用于 JTAG”。SW 是您必须在板上设计的不同物理端口吗?(我使用的是定制设计的应用板,而不是开发入门板。)

[谷歌搜索让我了解到这个难题_sys_open与一些编译指示__use_no_semihosting_swi和其他内容密切相关,ROM 中的 BRKPT 指令可能是 SWI(“软件中断”)ARM 指令的一些 ARM 变体。]

0 投票
3 回答
4803 浏览

embedded - “CPU 未停止”和“未找到 APB-AP”错误

当我使用 JTAG 将我的 C 代码加载到评估板时,它加载成功。但是,当我从 main() 执行代码时,我立即收到“CPU 未停止”错误,然后是“未找到 APB-AP”错误。

在出现此错误之前,我能够加载并执行与 USB 相关的代码。

我用谷歌搜索它并使用 JTAG 命令“rx 0”来重置目标,但它没有做任何改变。

我正在使用 ARM Cortex-M3 处理器、J-Link ARM V4.14d、IAR Embedded Workbench IDE。

感谢您的帮助。