Today we are going to burn a bootloader in to ATMega328PU using an Arduino Mega 2560. This method can also be used on the ATMega8 16PU and other microcontrollers.
Parts List: 1xATmega328
1xArduino Mega 2560
1x 16Mhz Crystal
1 x 100uF capacitor
2 x 22pF capacitors
1 x 1k Ohm resistors
1 x LED
And some jumper wires
The wiring is very simple
pin name: ATMega328 Mega(1280 and 2560)
RESET: 1: 53
MOSI: 17: 51
MISO: 18: 50
SCK: 19: 52
Note: LED goes to pin 19 with the 1K resistor on the ATMega328 and the 100uF Capasitor is needed after we upload the sketch to the arduino Mega 2560.
Step 1: Uploading the ArduinoISP
Uploading the Arduino ISP sketch
After you have made all the connections beetween the arduino and the ATMega328 (Do not Have the 100uF capacitor connected on this step)
Wew need to upload the ISP sketch into the arduino.
Go to File>Examples>ArduinoISP
Now we need to select our arduino board Tools>Board>Arduino Mega2560
Now we need to Set our Serial Port in my case is COM 4
Ok now we are ready to upload the Sketch.
We hit upload and wait till the sketch is uploaded.
Step 2: Burning the Bootloader
To Burn the bootloader we neet to select our microcontroller.
We go to
Tools>Board>Arduino Pro or Pro Mini (5v, 16mhz) With ATmega328 We leave the port the same COM 4 in this case.
Now we need to add that 100uF Capasitor between the Mega2560 Reset and 5V.
Now all we do is go to Tools>Burn Bootloader.
The LED is gonna start to flash and seconds later we are done.
The LED will stay on once the bootloader is uploaded into the microcontroller, if you want to upload a sketch just leave everything connected the way it is and open the sketch for example blink and go to file>upload using programmer and you should see the LED blinking. I have used this method many many times with Atmega328 and the older ATmega8 16 and I have never encounter any problems at all.