打印

MPLab为什么不能停在断点设置的那一行

[复制链接]
6163|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xinyancode|  楼主 | 2011-4-20 16:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 xinyancode 于 2011-4-20 16:42 编辑

MPLab为什么不能停在断点设置的那一行

我用的是dsPIC30F的芯片,C语言编程,我在MPLab里面设置了断点,然后程序执行。按照user guide里面的介绍,指示程序位置的绿箭头应该停在设置断点的这一行,可是我的这个却要停在下面几行的位置,有是是断点的下一行,有时是隔一行的下一行,位置不确定,请问这是怎么回事?应该如何解决?

谢谢!
沙发
XIEYUANBIN| | 2011-4-20 17:20 | 只看该作者
你大概是ICD2 或其他的 在线调试器调试,你有没有看那些调试器的手册,这个是局限,照理是停在你设置断点的下个PC,C就不一定.

使用特权

评论回复
板凳
xinyancode|  楼主 | 2011-4-20 17:27 | 只看该作者
我用的是ICD3,这种情况让人感觉很不爽,没法定位在某一行,

使用特权

评论回复
地板
yewuyi| | 2011-4-21 09:00 | 只看该作者
ICD3是调试器,别指望很强的单步调试性能。

LZ可能是用惯了那种全仿真的工具了吧,呵呵,习惯了就好。

使用特权

评论回复
5
兰天白云| | 2011-4-21 16:41 | 只看该作者
买个比ICD3还强的就可以了

使用特权

评论回复
6
251566208| | 2011-4-21 17:21 | 只看该作者
是代码那边吗?还是括号什么的?
如果是括号肯定不会在那里

使用特权

评论回复
7
xinyancode|  楼主 | 2011-4-21 17:36 | 只看该作者
请问当今在开发PIC单片机的工具里面,还有那个工具比ICD3更强?

使用特权

评论回复
8
skygrow| | 2011-4-22 13:49 | 只看该作者
在线调试器断点的滑行
在你要设置的断点下面加几行nop语句

使用特权

评论回复
9
yewuyi| | 2011-4-22 13:52 | 只看该作者
ICE

使用特权

评论回复
10
MyLovetus| | 2011-4-29 21:48 | 只看该作者
我也经常碰到这种问题,我查看过,应该是MPLAB的问题,因为有些C语句被优化了,所以导致MPLAB在C源代码窗口可能定位不准位置。如果你在反汇编窗口设置断点的话,就可以停在相应的的断点行。(纯属个人意见,仅供参考)

使用特权

评论回复
11
shizaigaole| | 2011-4-30 16:50 | 只看该作者
确实是个比较讨厌的问题。

有的时候都想不用pic算了,

可是想想PIC的片子本身,资料,

还是忍了。

使用特权

评论回复
12
yewuyi| | 2011-4-30 22:06 | 只看该作者
我也经常碰到这种问题,我查看过,应该是MPLAB的问题,因为有些C语句被优化了,所以导致MPLAB在C源代码窗口可能定位不准位置。如果你在反汇编窗口设置断点的话,就可以停在相应的的断点行。(纯属个人意见,仅供参考 ...
MyLovetus 发表于 2011-4-29 21:48


这不是MPLAB的问题,也不是编译器优化造成的,从技术角度看,类似ICD这种方式和流水线PC必然存在的一个小麻烦.

ICD3这种方式是通过内嵌了一段代码通过串行通信协议和IDE传送各种调试信息,而类似ICE方式则不是如此,而是运行在一种虚拟机的方式下,这种本质上的区别决定了这个小小的麻烦.

这个问题其实对于熟悉PIC的ICD调试的工程师来说,基本不太可能造成障碍,如果实在很不习惯,你完全可以使用ICE工具,不过,众多的工程师最后都选择了ICD本身就说明了其实是一个无所谓的问题.

呵呵,如果一切代码尽在掌握之中,你又何必在乎哪种调试手段?只有当你自己对自己写出来的代码'茫然'时,你才会需要通过大量的DEBUG来解决问题,一个合格的工程师写出的代码,其实不需要太多的DEBUG就能OK ,这就是功力,经验,能力的全面成就.

使用特权

评论回复
13
shizaigaole| | 2011-4-30 23:40 | 只看该作者
呼唤PIC的JTAG调试。

用惯了JLINK,

有的的时候恼火起来,

真想把ICD2,PICKIT3,等给砸了.......

因为需要动用仿真调试器的时候,一定是你头疼的时候,

他还给你对不上点,让你麻烦了又麻烦..........

如果说对PIC有啥不满,这是唯一不满的地方。

使用特权

评论回复
14
yewuyi| | 2011-5-2 11:43 | 只看该作者
呵呵,只有在高端PIC上才有JTAG方式.

使用特权

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

本版积分规则

85

主题

147

帖子

0

粉丝