AVR Programmer Shield

37,244

547

38

Published

Introduction: AVR Programmer Shield

Beside my Arduino instructables I also use pure ATmega328 and ATtiny85 microcontrollers. To program them I normally used a breadboard and the ArduinoISP setup with an Arduino UNO or NANO. But this was not the best solution.

So I build this programmer shield in my typical stripboard layout: Only straight lines - no crossings!

You need these parts:

  • 1x 28 pin socket
  • 1x 8 pin socket
  • 1x push button
  • 1x 16 MHz crystal
  • 1x red LED1x green LED
  • 1x yellow LED
  • Resistors for the LEDs: in my case 2x 220 Ohm (R and Y), 1x 2,2 kOhm (G)
  • 1x 10 kOhm resistor
  • 2x 22pF capacitor
  • 1x 10 µF capacitor
  • 1x male header 8 pins
  • 1x male header 4 pins
  • 1x male header 2 pins
  • 2x female header 14 pins
  • 2x female header 4 pins
  • 1x jumper
  • some colored wires

Here's now the step by step build instruction, not much words needed.

Step 1: Step 1: the Stripboard

Step 2: Step 2: Two Hidden Wires

Step 3: Step 3: the Headers

Because Fritzing has no sockets in the library I used the µCs. The two wire are below the sockets.

Step 4: Step 4: the Wires

Step 5: Step 5: Resistors and the Button

Place the resistors by the position of your LED colors. The button is to reset the µCs.

Step 6: Step 6: Last Parts

Add the LEDs, the capacitors and the crystal.

Step 7: Step 7: Bend Some Pins

Because of the strange Arduino header layout you have to bend some pins.

Step 8: Step 8: How to Connect?

Place it on the Arduino shield like this:

  1. Top Right pin: GND
  1. Bottom Left pin: also GND

If you bent the pins right, this should work easily.

Now you program your Arduino with the ArduinoISP example, but the shield on and program your µCs. Only one each time.

Step 9: Step 9: Nothing to Do - Only the Circuit and the Fritzing File

Share

    Recommendations

    • Make it Move Contest

      Make it Move Contest
    • Casting Contest

      Casting Contest
    • Oil Contest

      Oil Contest
    user

    We have a be nice policy.
    Please be positive and constructive.

    Tips

    Questions

    38 Comments

    I've made it exactly as by reported schematic and it works like a charm. I have to admit that at first try it was not working but then checking it back I found out I was missing all the ISP connections to the ICs (was using a normal perfboard, not a veroboard) -_-

    I still have to try it for the Attiny 8 pin ICs though.

    1 reply

    i did it too... but can you help me how to know if it's working or not without chip..??

    It seems that the 10uF cap its plus side is connected to reset of the arduino board, is this correct?

    1 reply

    I noticed the same and seems very strange to me since as soon as the button is pushed the Arduino is being reset from my point of view and this does not make sense to me. Also the polarity I'm not completely sure is ok but maybe I'm wrong, I'm not an expert just an Hobbyst. I hope someone can help us with this.

    Can I use this shield to program the bootloader AND upload a sketch without removing the atmega from the Uno? According to the arduino site, I need to remove the chip from the board before I can upload a sketch. (https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard)

    Hi. Very good intructable indeed!
    Just one question... Is this bridge an "on and off" thing? What is it for, and how do you use it?

    F9HXII0IH3T87N2.LARGE.jpg
    1 reply

    Hello, the jumper is to control the reset of the standalone ICs by the Arduino below. In the "on" position you can program the standalone IC. In the "off" position the Arduino below only works as the power supply and don't keep the standalone IC in the reset state. In this mode you can use the standalone IC and the shield like a normal Arduino by using the female jumpers.

    i have a question about the dotted line between 8 pin and pin 22 for ground it goes between the 328p do i pjt a wire between them or connect them pin 8 to a ground on tge left and pin 22 to a ground on the right thanks

    2 replies

    No, you don't need a wire. The dotted line is shown only because of the circuit schematic. The connection to GND on pin 8 and 22 is done via the Arduino board.

    it will also be helpful if you included pictures of tbe bottom of the shield to get an idea how it looks at the bottom

    in step 5 your diagram shows a black wire connecting ground to the third row next to the reset switch and a resistor between Vcc and pin one = high normal pulled to ground when button pushed ... in step 6 the diagram shows a red wire connected to Vcc connected to the switch and no black wire and the resistor is in a different place

    2 replies

    Now the image on step 6 is the right one.

    Ohh, sorry. I found an error in the reset circuit. All images should be updated but I forgot the image on step 6. Sorry.

    what is AVR PRPGRAMMER SHIELD and what does it do?

    1 reply

    The shield is to program ATmega328 and ATtiny85 ICs. Means burning the bootloader or upload your sketches without using the serial port.

    what do you use the female headers outside the chip sockets for ??

    4 replies

    Brings the pins out? Or chubbier chips.

    Sorry- tongue in cheek comment.
    Although, years ago, MCU chips were broad in the berth and needed special wide sockets, hence "chubbier chips".
    As far as I know, all the Atmel MCU's in DIP form, are 7.62-mm wide.

    chubbier chips?? .. does the Atmega328 or Attiny85 come in some weird wide body format ?

    Yes, Phils_S is right. The headers are to bring all pins out. So you can leave the chip in the programmer and test your program with sensors or other devices on a breadboard.