【问题标题】:Reading live RAM variables from a Micro controller in VB.net从 VB.net 中的微控制器读取实时 RAM 变量
【发布时间】:2013-02-19 05:10:29
【问题描述】:

当程序在微控制器上运行时,我想通过 JTAG 端口实时读取全局变量。有可能吗?

【问题讨论】:

  • 我们应该如何帮助您?您认为所有微控制器及其接口都相同吗?您需要更加具体。有可用的 JTAG 端口吗?您不会从该设备获得任何东西,除非它会提供给您,这可能需要修改软件。
  • 这并不特定于任何微控制器。我的问题是笼统的。是的,我应该提到 JTAG 端口的存在。
  • 您的问题需要具体,因为它因设备而异。如果您询问有关 JTAG 调试的问题,请修改您的问题以表明这一点。

标签: vb.net debugging embedded microcontroller jtag


【解决方案1】:

JTAG 仅定义了一个物理接口,它没有描述特定处理器的片上调试功能,该处理器可能支持或不支持执行期间的访问。

此外,是否可以在 VB 中完成并不是真正的问题,重要的问题是您为 JTAG 接口使用的硬件设备和/或 I/O 端口,以及是否可以通过 .Net 访问驱动程序和 API可用。也就是说,无论如何,VB.Net 都不是我选择的第一语言。

OpenOCD 可能是一个不错的起点,尽管它不是特定于 .Net 的。

【讨论】:

    【解决方案2】:

    “Almost-Live”可能是可行的,具体取决于 JTAG 实现。通常,读取内存的 JTAG 活动是通过从微单元中窃取周期(或者有时甚至将指令插入流水线)来实现的。我不确定是否有一个允许通过 JTAG 完全透明地访问内存的 micro。

    “您需要做的所有事情”就是了解 JTAG 实现,知道变量的位置并通过以适当的方式摆动 JTAG 引脚来发出“内存读取”命令。这不是一项小任务,这就是为什么专业工程师愿意为执行这项任务的工具支付(有时是大量)金钱。

    供应商提供的免费(有限)工具链通常也可以执行此操作。

    【讨论】:

      【解决方案3】:

      是的,我想这是可能的。但是您需要驱动 JTAG 端口(这听起来很痛苦!)并确切地知道数据在芯片上的存储位置,以及格式是什么。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-04-08
        • 2016-08-01
        • 2021-09-30
        • 1970-01-01
        • 2010-12-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多