??? 08/12/11 18:43 Read: times |
#183340 - Normally gdb for large-ARM projects. Responding to: ???'s previous message |
When I work with PC-class hardware, I mean programs using Linux or some other "big" OS.
If the platform doesn't boot at all, you would then normally need a Lauterbach or similar, but most bigger ARM chips already have platform support for at least Linux, care of the chip manufacturer. So for debugging I could use gdb. Note that gdb supports networking, where I can use gdb on a PC to debug a program running on an embedded target. Next thing is that when you get to bigger embedded platforms running Linux, you could do the majority of testing on a standard PC, with emulation layers for any specific hardware features of the embedded platform. And good code is expected to be able to handle little/big endian systems. And good developers are expected to be able to write code that are efficient enough that they will work on the target platform even if they are developed on a PC with 100 times more speed. So I use gdb for high-end embedded systems capable of running full operating systems. The Lauterbach can normally collect dust. And Keil MDK-ARM for low-end systems where there may - or may not - be any RTOS involved, and where the code plays directly with all the hardware. Keil's uLink if I feel I do need to single-step through the code. But mostly, I debug with printouts. |