Forum Replies Created
-
AuthorPosts
-
anteParticipant
Thanks Bazis – looks like the Raw Terminal is exactly what we need!
anteParticipantHi Bazis,
yes we automatically bring up PuTTY in the GDB script. But it would be very nice if it would be possible to use a Console tab in Visual Studio.
I have seen your fast semihosting solution – its very innovativ. However, our project uses a mixed environment where some developer runs Linux hence using Eclipse. For this reason we unfortunately cannot use VisualGDB fast semihosting. We have chosen ITM since it is supported by Eclipse (as well as Keil, Atollic Studio, IAR).
There are some other advantages with the ITM channel. In combination with the Cortex DWT unit it can be used to output various data automatically on certain conditions. I know you have your own profiling solution but I can just mention that you could instead let the DWT unit output the PC at a certain interval. In this case you don’t need to add any code to your project, you just configure the DWT unit.
I think some of the IDE’s mentioned above also uses the DWT+ITM to add variable trace. It is kind like a watchpoint but it does not break; instead it outputs the value that was read/written plus outputting the current PC. The latter is very useful since it would allow you to trace memory overwrite issues. If you know a certain variable is overwritten you just add this “watchpoint” to the variable and you can then, by the PC, see what parts of the code is writing to that variable. If you combined this with your disassembler you could probably even show exactly what code line generated the write.
anteParticipantThe syntax for the J-Link GDB command is:
monitor SWO EnableTarget <cpufreq> <swofreq> <portmask> <mode>
<cpufreq> CPU frequency in hertz, 0 = auto-detection
<swofreq> SWO frequency in hertz, 0 = auto-detect max
<portmask> A bit mask for the ITM channels to enable. (ITM_SendChar() uses channel 0)
<mode> Set to 0 -
AuthorPosts