Getting Started with the Botgoodies AM128 Development Board

AM128 Rev.0  Feb. 2002
 

What you need in addition to the AM128 development board:
 


Documentation Available

Refer to the accompanying CD for schematic, header pin-out, additional reference material on the ATMEGA128.

Take a look at Atmels web page (www.atmel.com) and AVRFreaks (www.avrfreaks.com) for lots of information.

Start it Up!

The AM128 is shipped with a test program in flash.  As soon as you connect power, the red LED should begin to flash.  Connect the RS-232 port to your PC and run a terminal program, such as HyperTerminal, with a setting of 19200 Baud, 8-N-1, no flow control.  You should see a series of numbers going past.  Reset the board to see the start up message.  You can control the LED flash speed with the + and - keys, and change the print mode with the space bar.

Now What?

You'll want to get your programmer talking to the board.  I am assuming that you are using an ISP programmer (the board is not yet tested with the JTAG interface) with AVR Studio as your interface software.  Connect your ISP programmer to the six pin header on the board.  Be sure pin 1 of your programmer is connected to pin 1 on the board (identified with a dot).  With power on the board, run the programmer in AVR Studio.  It should pop up indicating it is communicating with an AVR device.  Change the device to ATMEGA128.  Read the Signature under the "Advanced" tab and it should say "Signature matches device type" if all is well.

If this is working you can now download programs to the AVR flash.

Programming

You need to decide what language and dialect you are going to program your AVR with.  I am assuming that if you are using a high end device like the ATMEGA128 that you are not going to program in assembly language.  The majority of AVR programmers use C, a few use basic.  I am partial to C myself and know little of the AVR Basics, so I will concentrate on C.

You will require a compiler, basically a program that takes C code and produces an AVR machine readable file.  There are several compilers available.  GCC is a public domain, free, compiler that works very well.  This is what I use.  The latest GCC port (Version 3.2) directly supports the ATMEGA128.  There are commercial compilers available from Imagecraft and from Codevision that will likely be easier to use if you're starting out.

I have included a few GCC sample files on the CD.

If you are new to programming you need to do some research.  Go to www.AVRFreaks.com and look around.  I noticed an article discussing the various C compilers.  There are forums that discuss most aspects of using AVR micros.  You'll need to learn C.  Get a copy of Kernighan and Ritchies "The C Programming Language" and dig in.  C is a great language for microcontrollers.  It has a bit of a learning curve but its worth the effort.

What can I do with it?

I designed the AM128 board for use as a robotics controller.  I use two 32 pin wire-wrap female headers on the main circuit board to connect my AM128 and use wire wrap techniques to connect to sensors, motor controllers, microphones, compasses, RF wireless devices, etc.

You can also use breadboard connectors to connect to a breadboard for testing a simple design.

So you can see, the board can be used as a test board for the 128 chip or it can be used as a standalone controller board in a finished product.

AM128 Design Features
 


The board is shipped with the following fuse settings:

ATMEGA103 compatibility mode   -   off
JTAG interface  -  off
Boot flash section size - 4096
Brown out detection level - 4 Volts (actually 4.5 if you read the ATMEGA128 documentation)
Brown out detection  -  enabled
External Crystal/Resonator High Frequency, Start up time 16K Clk + 0

The board does not include a microprocessor supervisor IC as the board has built-in brown-out protection.  There is provision on the board for a 3 pin TI TL7757CLP or equivalent.
 

Troubleshooting
 


 
 

Botgoodies Home