I recently make a couple of breakout boards for USB connections to use on a breadboard, these are just a male and a female type A USB connector and some header pins soldered to some strip-board.
One thing that irks me, when I am prototyping a new circuit, is that when I need to program the micro-controller, this usually means wiring up the ICSP from scratch on a breadboard each time and usually all my breadboard space is used up by some other project.
Yes, you can make use of an Arduino board and simply plug an ATmega328P chip in and blast that directly, but I am often making use of ATtiny AVR chips and again don’t really want to be tying up a board simply to upload some code to a chip.
There are a few options available for sale, this one is particularly good:
It is available from Inside Gadgets for $4.50 + $3.00 P&P (£4.80) as a bare board with the SMD parts pre-soldered.
However being a cheapskate I decided to make my own using some strip board and some pin headers.
All that is really needed for each chip are the 6 pins used by the ICSP – VCC, GND, RST, MOSI, MISO and SCK, unfortunately each chip locates these pins in different places, so I decided on one board per chip type and a standard header to connect to a programmer.
Here is the various layouts I have done so far:
ATtiny25/45/85 DIP 8 chips
ATtiny24/44/84 DIP 14 chips
ATtiny2313/2314 DIP 20 chips
ATmega48/88/168/328P DIP 28 chips
First I marked up a sheet of strip board, (the same one I cut the USB headers from)
I cut out the boards and cut the relevant traces
I then soldered the pin headers and lengths of copper wire for the jumpers
The connector is simply 6 DuPont female-female wires with one end in a 1×6 connector block and the other end in a 2×5 connector block wired as for an ISP programmer
I can now use any of these boards as a stand-alone programming setup with either of my main ISP programmers.