Cypress技术论坛
直播中

张荣

8年用户 161经验值
私信 关注
[问答]

怎么进入ISR的单步?

好吧,这很烦人。我有一个100毫秒定时器中断,当我试图单步通过我的代码猜测我花了我所有的时间。有没有办法进入ISR的单步?

以上来自于百度翻译


     以下为原文
  Okay, so this is annoying.  I have a 100ms timer interrupt and when I try to single step through my code guess where I spend all my time.  Is there a way to single step without going into ISR's?

回帖(2)

彭玉林

2019-3-19 15:16:38
在步进过程中没有中断的方法。
在PSoC3上,用户可以通过将IE寄存器内的EA位设置为步骤0之前和步骤1之后手动进行。这是在拆卸窗口中列出的标准的8051个寄存器之一。
具有100MS中断是一个硬实时要求,单步是一个不同的领域,非实时域。不幸的是,这两个领域彼此不协调。
我希望这能有所帮助,罗伯特

以上来自于百度翻译


     以下为原文
  There is no build-in way to disable interrupts while stepping. 
    On PSoC3, the user can do it manually by setting the EA bit within the IE register to 0 before the step and 1 after the step.  This is one of the standard 8051 registers that is listed in the disassembly window.
    Having a 100ms interrupt is a hard real-time requirement, single step is a different domain, the non real-time domain. Unfortunately these two domains do not go well with each other.
    I hope this helps, Robert
举报

曹玥

2019-3-19 15:33:06
这不是什么好消息,但我的工作一直是围绕断点移动,不使用单步功能。
在某些情况下,我尝试过的是注释全局中断使能调用,然后我可以通过一些代码。当然,在大多数情况下,这不会有多大帮助…

以上来自于百度翻译


     以下为原文
  This isn't any more great news, but my work around for this has been to keep moving breakpoints around and not use the single-step feature...
    One thing that I have tried in certain cases is to comment out the global interrupt enable call, then I can step through some code. Of course, in most cases this won't help much...
举报

更多回帖

发帖
×
20
完善资料,
赚取积分