打印

能不能用软件模拟JTAG对CPU运行状态的控制?

[复制链接]
2836|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangtezi|  楼主 | 2011-8-22 18:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,能不能用软件模拟JTAG对CPU运行状态的控制?
如果可以的话,就可以通过UART进行软件的仿真与调试了。。。
沙发
香水城| | 2011-8-22 18:28 | 只看该作者
JTAG对CPU运行状态的控制是一个专门的通道,不需要CPU干预,反而是干预CPU的运行;它的最大特点是可以让程序实时地运行,时序上可以不受调试操作的干扰,所以叫做"仿真"。

但是UART必须是由CPU控制的,这样就违反了“让程序实时地运行”这个基本原则,代替不了"仿真"。

使用特权

评论回复
板凳
wangtezi|  楼主 | 2011-8-22 21:11 | 只看该作者
香主说的没错。
可是我用STM32做了一个PLC,编译型的,用IAP实现用户程序的下载,可是怎么实现调试仿真呢?有什么办法吗?

使用特权

评论回复
地板
香水城| | 2011-8-23 09:34 | 只看该作者
香主说的没错。
可是我用STM32做了一个PLC,编译型的,用IAP实现用户程序的下载,可是怎么实现调试仿真呢?有什么办法吗?
wangtezi 发表于 2011-8-22 21:11


用JTAG调试有什么困难吗?

使用特权

评论回复
5
wangtezi|  楼主 | 2011-8-23 12:20 | 只看该作者
用UART或CAN在工程应用时可以减少很多麻烦,
比如布线、折装、端口保护、防水等等
如果用JTAG, 就必须对上述问题作特殊考虑

使用特权

评论回复
6
香水城| | 2011-8-23 13:42 | 只看该作者
用UART或CAN在工程应用时可以减少很多麻烦,
比如布线、折装、端口保护、防水等等
如果用JTAG, 就必须对上述问题作特殊考虑
wangtezi 发表于 2011-8-23 12:20


常见的做法是用printf在适当的地方通过UART输出信息进行调试。

你要做什么?但使用UART肯定不能设置断点的,看变量或寄存器内容也是要有时间代价的。

使用特权

评论回复
7
wangtezi|  楼主 | 2011-8-27 08:19 | 只看该作者
不能设置断点啊,看来是不能实现在线仿真喽。
转了一大圈又回到原点,非得用JTAG不可喽!
别人的PLC是怎么做的呢?怎么就可以用UART仿真啊?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

55

帖子

0

粉丝