By Miro Samek, Quantum LeapsJul 3 2007 (0:05 AM), Embedded.com
In this part I start digging into the code discussed earlier in Part 1
and which is available online at the Embedded.com Download Code page
. The code contains C and C++ versions of the example application called "Blinky", because it blinks the 4 user LEDs of the Atmel AT91SAM7S-EK evaluation board.
The C version is located in the subdirectory c_blinky, and the equivalent C++ version is located in the subdirectory cpp_blinky. The Blinky application is primitive, but is carefully designed to use all the features covered in this multi-part article. The projects are based on the latest CodeSourcery G++ GNU toolchain for ARM .
In this part, I describe the generic startup code for the GNU toolchain as well as the low-level initialization for a bare-metal ARM system. The recommended reading for this part includes the "IAR Compiler Reference Guide" , specifically sections "System startup and termination" as well as "Customizing system initialization".
Click here to read more ...