Codewarrior 10, disable interrupts while stepping

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Codewarrior 10, disable interrupts while stepping

2,210 次查看
Nik
Contributor III

Interrupts can be disabled while stepping in CW 6 via the MultiLinkCyclonePro menu, but I can't find a way to do this is in CW10.

 

Also, when I often get a message that the target is "already being debugged" (or similar) when I try to step.  Especially if I click on "terminate" and try to restart.

标签 (1)
标记 (1)
0 项奖励
回复
2 回复数

1,078 次查看
BlackNight
NXP Employee
NXP Employee

Yes, I'm missing that functionality too. I have filed a request to add this functionality/menu/option for MCU10.1, so this will be hopefully available too.

What I do right now (and this is what you could do is): open the register view (if not already open), go to the core registers, CCR register and set the I CCR (disable interrupts) bit while stepping.

 

As for the second problem (target already debugged): this happens to me when I forget to stop debugging and I have switched to the C/C++ perspective and then try to debug again (in that case the message is ok).

Seems that this is not your case. Maybe you could describe a little bit more the details so I can try to reproduce this on my side? What target are you debugging? P&E Multilink? Does it happen all the time? Anything to get this one resolved would be appreciated.

 

BK

0 项奖励
回复

1,078 次查看
Nik
Contributor III

I haven't seen the "target already debugged" issue lately.  I don't know what I was doing wrong or what might have changed.    Regarding the step through interrupt issue, a workaround is (via Freescale support) is:

 

*************************

As a current workaround for what you intend to do:

 

1) You can preserve FLASH memory ranges for HCS08/RS08/CFV1 devices by specifying reserved memory ranges within Advanced Options Dialog.

2) You can currently use a hidden P&E command to enable/disable interrupts on the part:

 

gdi _i 1 - mask interrupts

gdi _i 0 - enable interrupts

gdi _reg - get status of PC/A/HX/SP/CCR registers.

 

P&E commands that I listed should be entered into 'Debugger Shell' view window. You can bring it up by selecting Debugger Shell option from Window -> Show View -> Debugger Shell menu.

 

To determine whether the interrupts are enabled or not, you should use GDI _reg command.

 

It will output the status of all bits in the CCR register. If the I bit is set, it means that the interrupts are masked. If the I bit in CCR register is cleared, it means that the interrupts on the device are enabled.

 

*****************************

Also see the attached jpg.

 


BlackNight wrote:

Yes, I'm missing that functionality too. I have filed a request to add this functionality/menu/option for MCU10.1, so this will be hopefully available too.

What I do right now (and this is what you could do is): open the register view (if not already open), go to the core registers, CCR register and set the I CCR (disable interrupts) bit while stepping.

 

As for the second problem (target already debugged): this happens to me when I forget to stop debugging and I have switched to the C/C++ perspective and then try to debug again (in that case the message is ok).

Seems that this is not your case. Maybe you could describe a little bit more the details so I can try to reproduce this on my side? What target are you debugging? P&E Multilink? Does it happen all the time? Anything to get this one resolved would be appreciated.

 

BK


 

0 项奖励
回复