What are we going to do is program an ATMega328P without an external crystal by using USBASP programmer and the Arduino IDE.
Why would we want this? It uses less components and gets up closer to knowing how to program with something like WINAVR and because programming is fun an addicting. Not everything runs on Arduino, but it is a great place to start.
I use an USBASP clone programmer from my local electronics store. I have read this same procedure can be done on and Arduino board, but i have not been unsuccessful at making that work.
Step 1: Connections
If you follow the ISP Header 6-pin and connect the
MISO to the MISO on the chip
SCK to SCK on the chip.
You get the idea.
You could do all this on a breadboard or you could use the avr target board fournd here.
Additionally you can get some good help here
The 6-Pin header is on the USBASP.
Step 2: Board Files
Even if you do have the ” ATMEGA 328 on a breadboard (8MHz internal clock) ” showing but it is not working then you need to install my files.

The only difference is the last line. atmega328bb.build.variant=arduino:standard

