AVR 101 - Bring up an ATMega8 on the Olimex AVR-P28


[Not finished - Draft of proposed article] [Update 5/26/09: See “Pimping out an AVR-P28 Dev Board”]

Synopsis: I wanted to publish a very targeted tutorial on how to bring up an ATMega8 AVR processor on an Olimex AVR-P28 development board. This board has the minimal power circuitry an LED and push button as well as an 8MHz crystal to clock the device and supports the 28 pin packages (ATMega8 and ATMega168).

This article will cover what modifications are necessary to the development board itself to connect the external DB-9 serial connector to the serial pins on the ATMega8. It will then cover a simple serial communication test program, the programming of the ATMega8 device itself and then the testing.

I will also cover how to set the ATMega8 fuses to take advantage of the 8MHz clock (vs the default 1MHz internal clock of the AVR that is configured as the factory default of the device.) Fuse setting can be an intimidating topic for someone new to AVR because if you do it wrong, you can brick your AVR device. It's further made intimidating because of the plethora of confusing articles that give contradictory explanations of what a fuse setting means (aka: programmed/unprogrammed, checked/unchecked, etc.) I will use the fewest words possible to explain fuse settings through PonyProg and attempt in one short paragraph to succinctly clear confusion about how to set up fuses.

After you've finished this tutorial you will have the foundation you need to communicate with numerous serial devices such as GPS, XBee radios, serial-enabled LCD screens using an AVR ATMega8.

In short, this is the process for a complete round trip for starting to develop with the AVR-P28 board.
0 Comments
asdfasdf