I am trying my best to port WIRING/Arduino API to FRDM-KL25Z and my new board called GAP. As part of open source operation, I must use open source toolchain: GNU C++ / eclipse IDE / PEmicro gdbserver (free but not open source)/ FRDM-KL25Z.
The setup procedure is a little complex, please check this blog : DIY Free Toolchain for Kinetis: Part 2 – Eclipse IDE | MCU on Eclipse
The debugger works well until I try to access (single step into) a public method of an object. The debugger and eclipse report some errors of "reading 0x....." and stop debugging.
I though maybe my implementation of C++ is wrong? So I use LED indicator in different methods. for example, method1() is RED blinks, method2() is GRN blinks, method3() is BLU blinks. It works. But debugging still fails.
For people who is interested in open source, I attached my project. Maybe you guys have the answer.
I have checked source code of Arduino/WIRING, porting is straight forward. I hope to delivery first version (with simple USB applications) before long.
Original Attachment has been moved to: LED_Blink_DemoCPP_Debugging_V1.1.zip
Hi,
I encountered a similar problem while using the GNU ARM compiler. The problems seems to be that some optimizations like "-O1" deactivate the generation of frame pointers which are used for debuggin. Try to add "-fno-omit-frame-pointer" to the compiler flags.
Best regards,
Thomas
Thanks, Thomas,
I am using "O0", which means no optimization, it should be suitable for debug. For the other option, I will have a try.
Yours sincerely
Allan K Liu