当程序在微控制器上运行时,我希望通过JTAG端口读取全局变量。有可能吗?
答案 0 :(得分:3)
JTAG仅定义了物理接口,它没有描述特定处理器的片上调试功能,这些处理器在执行期间可能支持也可能不支持访问。
此外,它是否可以在VB中完成并不是真正的问题,重要的问题是您使用的JTAG接口的硬件设备和/或I / O端口,以及是否通过.Net访问驱动程序和API是可用的。那就是说VB.Net不是我在任何情况下选择的第一种语言。
一个好的起点可能是OpenOCD,虽然它不是.Net特定的。
答案 1 :(得分:2)
“Almost-Live”可能是可行的,具体取决于JTAG实现。读取存储器的JTAG活动通常是通过从微观中窃取周期(或者有时甚至将指令插入流水线)来实现的。我不确定是否允许通过JTAG完全透明地访问内存。
“你需要做的就是”理解JTAG实现,知道变量的位置,并通过以适当的方式摆动JTAG引脚来发出“存储器读取”命令。这不是一项小任务,这就是为什么专业工程师愿意为执行此任务的工具支付(有时是大笔)资金的原因。
供应商提供的免费(有限)工具链通常也可以执行此操作。
答案 2 :(得分:0)
是的,我想这是可能的。但是你需要驱动JTAG端口(这听起来很痛苦!)并确切地知道数据在芯片上的存储位置,以及格式化的内容。