I have an old Arduino Diecimila and some new Atmega328P-PU chips. Shouldn’t have but I brounght some without bootloader to save some dollars.
What next? search instructables to see if I can burn bootloader to ths chips. Unluckily not working. An error message “avrdude: stk500_getsync(): not in sync: resp=0x00 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51” shown.
There is a way to solder some pins on Arduino Diecimila to solve the problem but that Arduino is the only one I have so I don’t want to change my working board.
Step 1: Open sketch ArduinoISP and setup wires
So I open the ArduinoISP sketch to check. Then found most instructables have missed one link: connecting pin 10 of Arduino to pin 1 (reset) of Atemega328P. I connect that then everything works. Of course that is afer serveral trials.
Connect as captured. First column refers to Arduino Diecimila, second column refers to pin of Atmega328p
Pin 10 -> pin 1 (this is very important for my case, without it the IDE prompted error then failed to burn)
Pins 13, 12, 11 -> pins 19, 18, 17
Pins 10 -> pin 1
Vcc -> pins 7, 20
Gnd -> pins 8, 22
And connecting crystall and capacitors to Atmega328p
Crystal 16Mhz -> pins 9, 10
Capacitor 22pf -> pins 8,9
Capactior 22pf -> pins 8, 10
Now hardward parts set. Then plug the Arudino Diecimila to your computer and following the steps next.
For more detail: Burn BootLoader into Atmega328P using Arduino Diecimila