Stepping over a library (in-built) function in CodeWarrior

cancel
Showing results for 
Search instead for 
Did you mean: 

Stepping over a library (in-built) function in CodeWarrior

108 Views
TKB
Contributor I

I am using CodeWarrior and an example program from your website to understand the functioning of the FXTH870911 chip. The program I am using is called FXTH_FW_BLE_Beacon_by_GenFSK. 

One of the factory loaded functions present in the code is TPMS_LF_ENABLE(). Since we can't view the source code of this function, I try to step over it, but strangely enough it still steps into the function and then gets stuck there. I see the "no source available" message and the disassembly as shown in the screenshots below.

Uf1EL.png24mnp.png

How do I exit out of this function or rather not enter it in the first place?

Thanks

Tushar

0 Kudos
7 Replies

67 Views
TKB
Contributor I

Hi Tomas

In the window below, do I just click "Reset"?

TKB_0-1617986883134.png

I did try everything like you suggested but it is still entering Disassembly. 

Are you not able to recreate this problem at your end?

Thanks

Tushar

 

0 Kudos

58 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Tushar,

Yes, it is necessary to click “Reset” for the debugger to actually perform the software reset.

I hope it will work this time.

Best regards,

Tomas

PS: Please use the “Reply” button at the bottom of the latest post to keep the right order.

0 Kudos

46 Views
TKB
Contributor I

Hi Tomas

Actually it didn’t work

I wonder if you’re able to recreate this problem at your side?

Tushar

0 Kudos

17 Views
TKB
Contributor I

Hi Tomas

I was wondering if I am seeing this problem because I accidentally deleted the factory loaded firmware functions? I am not sure if I did but that's what my suspicion is.

Anyway, I did a disassembly of the main.c code before debugging and saw that there is actually something happening in the firmware/ library functions and it's not just some random FFFF code. 

112: TPMS_LF_ENABLE(CLEAR);
0000001A 4F CLRA
0000001B CDE072 JSR 0xE072
115: TPMS_READ_ID (TPMS_ID);
0000001E AE00 LDX #TPMS_ID
00000020 8C CLRH
00000021 CDE06F JSR 0xE06F
00000024 2022 BRA *+36 ;abs = 0x0048 

So I am not sure yet what to make of it. Any suggestions will be really appreciated.

Thanks

Tushar

0 Kudos

96 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Tushar,

In the CodeWarrior IDE, the “Step Over” command only works when there is no user breakpoint. If there is a breakpoint, then the “Step Over” behaves like a “Step Into”. I see in your screenshot that one breakpoint is present, so I suppose this is the reason why the program does a “Step Into” instead of “Step Over”.

Capture.JPG

Could you try to remove this breakpoint, and all others if any, and then retry?

Best regards,

Tomas

0 Kudos

90 Views
TKB
Contributor I

Hi Tomas

I removed all user breakpoints

TKB_0-1617875047457.png

But the problem persists!

TKB_1-1617875088881.png

 

Regards,

Tushar

0 Kudos

75 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Tushar,

I would recommend to follow this exact procedure:

1. Start the debug session without any breakpoint.

2. When the debug session is active the program is automatically stopped at the beginning of the main. At this moment, place one desired breakpoint. Do not run the program.

3. Click on the button button.pngto do a software reset.

4. Run the program, it will stop at the breakpoint.

5. Remove the breakpoint.

6. Click on “step over”.

If this does not work, I do not have any other idea unfortunately.

Best regards,

Tomas

0 Kudos