【问题标题】:How to control JTAG device to write binary file to the flash memory?如何控制 JTAG 设备将二进制文件写入闪存?
【发布时间】:2020-04-26 22:27:47
【问题描述】:

因为我的母语不是英语,所以可能会有粗鲁的表达。 希望你能理解。

我有一个如下所示的 JTAG 调试器,我想创建一个应用程序来控制 JTAG。

我知道有很多工具可以做到这一点。其实我也有使用 IAR IDE 工具,但我想知道 IAR 编译器是如何控制 JTAG 的。

如何控制JTAG设备将二进制文件写入闪存? 任何信息都可以。如果您有任何线索,请告诉我。

感谢阅读。

【问题讨论】:

  • 阅读 jlink 手册

标签: stm32 jtag


【解决方案1】:

在 JTAG 标准中实现了一个协议,该协议允许与同样使用该协议并具有硬件接口的微控制器进行通信。该协议实现为状态机 (https://en.wikipedia.org/wiki/Finite-state_machine)。 JTAG 状态机图在https://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/s2009/jgs33_rrw32/Final%20Paper/index.html 中(即 TCP/IP 堆栈/协议也是一个状态机:http://telescript.denayer.wenk.be/~hcr/cn/idoceo/tcp_linkstates.html)。

基本上在 JTAG 标准中指定了访问 uC 上的哪些寄存器以及状态机必须处于何种状态才能访问特定寄存器,有关详细信息,请参阅https://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/s2009/jgs33_rrw32/Final%20Paper/index.html

因此,如果您想编写一个程序来控制 JTAG 编程器,您必须在代码中实现 JTAG 状态机,因为电缆另一端的微控制器中的相应状态机只能理解此协议。

C 中 TCP 状态机的实现在 https://www.oryx-embedded.com/doc/tcp__fsm_8c_source.html 中,即https://aticleworld.com/state-machine-using-c/ 也是状态机的实现

【讨论】:

    猜你喜欢
    • 2012-12-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多