How to Debug a Windows CE 5.0 Debug Image
This application note will guide you through the steps needed, to create a debug image for Windows CE 5. This is demonstrated with a BSP for Trizeps IV, but the steps will almost also apply for Trizeps5, Trizeps2 and Trizeps3.
Preparation
Take a look at Building a Windows CE 5.0 Image for Trizeps4 from Scratch. This project will be used as starting point.
Selecting Debug Configuration
Every Platform-Builder-Workspace has two different configurations. The Release-configuration which you have used in the Building a Windows CE 5.0 Image for Trizeps4 from Scratch-application note and the Debug-configuration. In the Debug-configuration all modules are build with debugging-information. This and the fact that some optimizations are disabled increases the size of the output files.
Select TR4CONXS_Debug.
Building the Debug Image
Run Build OS –> Sysgen.
After several minutes you will see:
Unlike the CoreMax-project, which can be easily built for Release and Debug, the Demo-project is far too big.
To be able to build a debug-image, we can use a trick:
Build OS –> Open Build Release Directorywill show you where the_FLATRELEASEDIRECTORYresides.Change the name of this directory from
TR4CONXS_ARMV4I_DebugtoTR4CONXS_ARMV4I_FullDebug.Make a copy of the
TR4CONXS_ARMV4I_Releasedirectory and name itTR4CONXS_ARMV4I_Debug.Build OS –> Build Sysgen Current BSP.Copy desired debug-DLL's and EXE to the debug directory.
Build OS –> Make Run-Time Image
This time Make Run-Time Image will finish with success.
Prepare SD-Card
The easiest way to load a debug-image, is to use a SD-card. Put nk_ram.nb0 and a autoboot.bat with following contents onto the card:
display
boot mmc nk_ram.nb0 kitldisplay will show a boot-bitmap if one is stored on the Trizeps-module.
boot mmc nk_ram.nb0 kitl will boot the image from SD-card and the command-line-argument kitl will tell the image to start the kitl-transport.
Insert SD-card into the card-socket of your board.
Start Debugging
Now that you have a Windows CE5.0-Debug-Image, you can start to debug.
Select Target –> Connectivity Options.
Now set:
DownloadtoNone.TransporttoEthernet.DebuggertoKdStub.
Press Settings-button next to the Transport-box and power-up your device.
After some seconds a name will appear in the Active Devices-window. Select it and press OK. Close the Target Device Connectivity Options-dialog with Apply.
If you have a serial-link connected to COM1 with 38K4 Baud 8N1, than you will see, that the device first tries to obtain an IP-address from a BOOTP-server and if that fails, it will get it's IP through DHCP.
Press Target –> Attach Device.
Now the kitl-debug-connection will be established and you may set breakpoints, use the Windows CE Shell-extension or other powerful debug tools of the Windows CE Platform Builder.
Download
Demo-Project: demo_2008_10_09.zip
Debug-Image: nk_ram_debug_2008_10_10.nb0