ATMEGA328 Bootloader Programming Shield for Arduino Uno

9.1K659

Intro: ATMEGA328 Bootloader Programming Shield for Arduino Uno

ATMEGA328P boot-loader programming shield for Arduino Uno

Sometimes it happens and you damage your Arduino Uno Atmega328P microprocessor. You can change processor. But first it need to program boot-loader in it. So this tutorial how to make this board which upload bootloader.

If you don't want to make this board, look at this tutorial >>

https://learn.sparkfun.com/tutorials/installing-an...

To build this programmer you will need >>>
Parts:

1 x Atmega328P or Atmega328 PU microprocessor

2x 16MHz HC49S crystal quartz

2x 22pF 0805 ceramic capacitors

1x10K 0805 resistor

1x OR 1206 rezistor

1x 28 pin DIP socket

1x 40pins header pins

1x 75mm-75mm copper board

STEP 1: PCB Board

Design printed circuit board (PCB), I was used ,,Sprint-Layout" software. Exported Gerber files.

STEP 2: Soldering Board

28 DIP socket pins need to bend. I didn't want to drill holes.

After soldering this board it looks like this

STEP 3: Programming Atmega328P Bootloader

1) Open Arduino software

2) File> Examples > ArduinoISP

3) Tools > Programmer > Arduino as ISP

4) Sketch > Upload

5) Tools > Burn Bootloader

7 Comments

I have the same question, I can upload bootloader without crystals, why do you need them?

A new ATMEGA328 is factory programmed (internal fuses set) to use it's internal 1MHz oscillator. Thus for a new chip, the crystals are not required to burn the bootloader.
Once the chip has been programmed with the Arduino bootloader, the internal fuses are set to use an external oscillator. Without the additional crystal used in this circuit, such a chip can no longer be re-programmed without a crystal.

Hope this answers your question.

one more questions: the crystal will work if I program a news chip also? even thought is supposed to be set to use internal oscillator?
I'be been delaying a shield like this but I think now I will build it

It will still work correct.

I have been using my programmer for a few years now, based on the same principal.

https://www.instructables.com/id/Arduino-UNO-as-AtMega328P-Programmer/

Nice board! I'm curious why you included 2 crystals though...

I have a lot of 16MHz quartz, so it is easiest way for me to design pcb with 2. I know 1 quartz it will be better.