The process is known as 'stepwise refinement' and I'll credit it to Niklaus Wirth because I first saw it described in his book "Algorithms + Data Structures = Programs". First you get a development board with some type of development tool chain. It doesn't much matter which one. Next you run the simple examples. For an embedded platform this is usually a blinking LED. For a computer platform this is "Hello World!". Both are sufficient to show that the tool chain and development board are working. Then you study all of the files that make up the example. The startup code, the main program, etc. You look at every statement and, using the device datasheet and board schematic, try to learn exactly what it does. In the embedded world there will be some startup code you just take on faith because it will be a long time before you need to worry about it. But, things like setting up the IODIR register and then using IOSET and IOCLR to turn things on and off are fundamental to microcontrollers. Now that the blinking LED is understood, the next step is to get the serial port working and create the "Hello World!" example. This may be included with the software. Nevertheless, it is the second step and it is important because, while JTAG debugging is glamorous, printf debugging is also useful. Then it is time to move on to I2C or SPI. Perhaps hang an MMC/SD card on the bus and implement a file system. Maybe hang an MP3 CODEC on the SPI bus and build a complete MP3 player. That ought to do it: there is a little bit of everything in a project like that. One step at a time...
Message
Re: Some worthless talk, A request and Need help
2005-12-14 by rtstofer
Attachments
- No local attachments were found for this message.