]>
Commit | Line | Data |
---|---|---|
9f58d852 PA |
1 | ------------------------------------------------------------------------------- |
2 | ARM ETM/ITM Tracing | |
3 | ------------------------------------------------------------------------------- | |
4 | ||
5 | This is an example capture from ARM Cortex-M3 ETM/ITM trace stream. | |
6 | ||
7 | The trace was captured from LPC1769 microcontroller while running | |
8 | this software (revision bffb804): | |
9 | https://github.com/PetteriAimonen/Smoothieware/tree/bffb804 | |
10 | ||
11 | The data has been captured with the CPU running at 4 MHz at 12 MHz samplerate, | |
12 | to capture all the data. It has then been cut to a smaller fragment and | |
13 | samplerate set to 300MHz so that times correspond to realtime speeds. | |
14 | ||
15 | Configuration for decoding: | |
16 | - UART signal 0, baudrate 100000000 | |
17 | - TPIU stream 2 | |
18 | - ARM_ETMv3, elffile=smoothieware.elf | |
19 | ||
f192ae2b UH |
20 | The ETM capture has been configured without direct branch reporting, |
21 | so the .elf file is needed for proper decoding. | |
9f58d852 | 22 | |
f192ae2b | 23 | Note that the source code is not visible in the GUI (and not in objdump output |
9f58d852 PA |
24 | either), because it is not included in this repo. You can download it from the |
25 | above github link. Due to how gcc stores debug info, you have to put it in this | |
f192ae2b UH |
26 | path if you want it to show: /home/petteri/projects/Smoothieware. |
27 | ||
28 | ||
29 | Logic analyzer setup | |
30 | -------------------- | |
31 | ||
32 | The logic analyzer used was an FX2 based device (at 12MHz, but see above): | |
33 | ||
34 | Probe LPC1769 | |
35 | ------------------- | |
36 | 0 SWO | |
37 | 3 ? | |
38 | 5 ? | |
9f58d852 | 39 |