This instructable adds to any of the Arduino on a Breadboard instructables. I wrote my own breadboard-Arduino tutorial, and then I found that I was struggling to program some of the boards I made. A lot of research and dead-ends got me understanding that:
1. You either need a microcontroller with a pre-loaded Bootloader, or must load your own
2. Not all ATmega328’s are equal
(A bootloader, very simply, is a programme that sits on the chip and manages the upload of your sketches onto the chip)
There are plenty of bootloading resources, but I couldn’t find a single one that pulled everything together in a way that made sense to me.
If this instructable helped you, please visit Crash Bang Prototyping, follow us on twitter, and join in with our prototyping resources and tools.
Step 1: Parts
Step 2: The Approach
We’re going to use the Arduino UNO to bootload the ATmega328 that is sitting on the Arduino-on-a-Breadboard. This is fairly straightforward if you have an ATmega328P-PU, but needs an extra step for an ATmega328-PU. I’ll tackle the differences later in the Instructable.
Step 3: Program your Arduino UNO as an ISP
We need to program the Arduino UNO to act as a an ISP (In-System Programmer), so that it can burn the bootloader onto the Breadboard chip.
- Open the Arduino IDE
- Open the ArduinoISP sketch (under File, Examples)
- If you’re using version 1.0 of the IDE:
search for void heartbeatand change the line that reads:
Connect your UNO to the PC, making sure it’s not connected to the Arduino on a Breadboard.
Ensure your UNO is selected under the Boards menu option, and upload the sketch.