I had ordered some ATMega328p chips from China with the Arduino BootLoader already on them for some up coming projects, but as it turned out there was no BootLoader installed, Grrrr !!!
I have read a lot of different articles on this, and i haven't had much luck and spent a lot of time to get them working either because i'm a noob or and idiot (you decide), so i thought i'd make one of these and try and make it as easy as possible so others can benefit when making their own BareDuinos from the awesome AtMega328p chip.
Step 1: B.O.M
What you will need:
The assumption is that you have an Arduino Uno or the like already and your familiar with the IDE and uploading sketches.
I got all the materials from eBay, as the proses varies i won't put in links for the below, as i'm sure by now you can get the items cheaper than i did 2 months ago :)
1 * Atmega328p.
1 * Breadboard.
1 * 16mhz crystal.
Step 2: Wire It Up . . .
Wire up the Arduino Uno with the breadboard and the ATMega328p like the above image, don’tforget to include the 16mhz oscillator.
The generalistic error message shown above is what i get when i forgot the 16mhz oscillator.
Arduino Pin 13 -> chip pin 19.
Arduino Pin 12 -> chip pin 18.
Arduino Pin 11 -> chip pin 17.
Arduino Pin 10 -> chip pin 1 Reset (no Capacitor needed).
Vcc and GND too of course.
Step 3: Burn It . . .
In the Arduino IDE, Open the ArduinoISP sketch from, File > Examples > ArduinoISP.
Choose the right serial port that the Arduino is connected on.
UpLoad the sketch ArduinoISP to the Arduino Uno board.
Given you have wired it up correctly it's time to burn the bootloader.
Under Tools > Board: make sure that you select "AtMega328 on a breadboard (8 MHz internal Clock)" as shown above in the second image.
Under Tools > Programmer: make sure that you select "Arduino as ISP" as shown above.
Run Tools > Burn Bootloader.
Once that has uploaded successfully burnt to the chip you should see "Done burning bootloader." as shown above and you are done. Happy days
Step 4: The End...
If you now connect a LED from pin 13 to ground, 5v to pin 20 and GND to pin 22, you should have a flashing LED which means that its now ready to be programmed.
Now on to "How to program and make a minimalistic Arduino running the internal clock" here: (https://www.instructables.com/id/BareDuino-How-to-P...)