This tutorial shows an example of compiling a C program with ImageCraft
C and debugging it, first using an ARM7 simulator, and then using a Segger JLink JTAG pod
and a Philips/NXP LPC2106.
If you are using a different JTAG pod, or a different compiler, or a different
target processor, please bear with us and follow along. Most of the concepts
and many of the details are the same, and we will point out some of the places
where there are variations.
If we missed something, or if we have written something unclearly, please
let us know.
The tutorial is designed so that you can just view the web pages, or you can
follow along with your own copy of NoICE.
Our tutorial has several sections
- Running NoICE for the first time. Here we
will configure NoICE after installation to use the ARM7 simulator.
Then we will demonstrate some of the available features at the assembly level.
If you don't know ARM7 assembly lanaguage, don't worry - we will guide you through.
- Connecting to hardware for the first time.
Here we show the steps to connecting and using the Segger JLink BDM pod. You can
follow this whether or not you have a JLink.
If you use another type of JTAG pod, or aren't going to be using JTAG at all,
there will be links to show you the equivalent setup for your target.
- Compiling a program for debugging.
Here we will compile a program only slightly more sophisticated than "Hello World".
Yes, it will have variables called "foo" and "bar".
We will use the ImageCraft C compiler and show you how to configure the build
to generate the debug file. If you use another compiler, we will have links to
show you how to configure them.
- Source-level debugging.
Here we will use the NoICE to debug the C program from the previous stop.
If you have target hardware and a JLink, you can repeat this section on