circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





 

Issue 147 October 2002
Design with STKxxx
Build an Ethernet Controller


by Fred Eady
Fred first introduced us to the STK500 starter kit. Now he’s back with the newest tool in his Atmel toolbox, the STK501. In this project, he combines the STK501 daughterboard with the STK500 and ASIX Ax88796 to build a 10/100-Mbps Ethernet controller.

Start Driving the Tool Set Board Meeting Sources & PDF

As microcontrollers and their supporting parts move from the classic DIP and leaded packages to the realm of SMT, the tools that support them must also make that migration. Proof in point is this month’s subject matter.

The Atmel ATmega128 MCU can be had only in a 64-pin TQFP configuration. I was drawn to this part by its high I/O pin count, speed, and large amounts of internal SRAM and program flash memory. To experiment with the ATmega128, I had to come up with a way to get at its power without having to solder one down every time I changed applications.

After some thought, I came up with the package you can see in Photo 1. My aim was to use a standard and commonly available through-hole IC socket that could carry the ATmega128 and a PCB that would extend the ATmega128’s pins out to larger hard points. The 64-pin IC socket that supports the ATmega128/PCB duo is the same one that carries the venerable 68000 series of micros.

(Click here to enlarge)

Photo 1—This is a handy 64-pin IC socket package because you can throw it in a socket and wire wrap or solder it into your project.

Because I’m from the South, I spend a lot of time on the interstate highway system traveling between Florida and Tennessee. Of course, when you think of an interstate you think of trucks and trailers. The resulting PCB and ATmega128 perched atop the 64-pin IC socket reminded me of a big old flatbed tractor-trailer rolling down the highway. So, the contraption you see in Photo 1 is dubbed "Flatbed." The Flatbed lash-up works well, and I have an eight-lane Pinewood Derby race timer running with the ATmega128/ carrier board/64-pin IC socket combination on-line out there in Boy Scout land to prove it.

Although Flatbed serves its purpose well, there are situations when the standard-voltage or commercial-temperature ATmega128 isn’t suitable for the environment the microcontroller is going to reside in. Therefore, you have to build a fleet of Flatbeds with each little truck carrying a low-power ATmega128L-8AC or industrial temperature-rated ATmega128-16AI.

ATMEL’S STK501

To avoid having to put together a fleet of Flatbeds, Atmel offers the STK501, which is an add-on product for the STK500 AVR development system. As you can see in Photo 2, the STK501 is a daughterboard that couples to the original STK500 via the expansion headers. A TQFP ZIF socket, which is a mechanical marvel in its own right, takes all of the pain out of switching between the various types of ATMega128 devices. The ATmega128 TQFP ZIF socket is spring-loaded, and it has fingers for each pin that move out of the way to allow the ATmega128 to be inserted and removed.

(Click here to enlarge)

Photo 2—The addition of the STK501 allows the STK500 to support all of the Atmel 8-bit microcontrollers with a single development board.

The STK501 is not just a home for an ATmega128. The ATmega128 has three additional I/O ports (i.e., E, F, and G), and the STK501 pins them out. There’s also an additional serial port that must be accommodated; the STK501 pins it out as well. For convenience, the STK501 includes a MAX3232E RS-232 converter IC and nine-pin shell connector that are tied directly to the extra ATmega128 serial port.

The ATmega128 has the ability to use a 32.768-kHz crystal that can be tied across the TOSC pin set. A slide switch on the STK501 switches the on-board 32.768-kHz crystal in and out of this circuit arrangement.

Other features of the STK501 include solder pads for an additional ATmega128 test socket and external SRAM or flash memory. A 6-pin connection is provided to allow a programming cable to be fitted between the STK500 and STK501 ISP programming headers. For JTAG ICE users, the STK501 has a JTAG pin set that mates perfectly with the Atmel JTAG ICE header. Take a look at Photo 3 to see theSTK500/STK501 configuration I used for this project.

(Click here to enlarge)

Photo 3—The standardization of the 10-pin headers on the STK500 and STK501 made for a clean I/O connection to the AX88796 development board.