ATMEGA328 Through-Hole DIP28

ATMEGA328 Datasheet

ATMEGA328P

Below is the pinout for the Through-Hole part in the Arduino Uno R3.

{74D81C8D-1C5D-4C85-9AFD-DE342231E8C2}.png

In order to program this particular part from factory settings, you must bootload the microcontroller. Bootloading the microcontroller(mcu) will effectively load the equivalent of the Arduino operating system onto the integrated circuit. You need this because the mcu can be used for a variety of things, the software we are choosing to use, requires some setup. Think of it as telling the microcontroller, when you upload code, this is the language and here is how I want it to be used. We will start by preparing the programming Arduino.

Arduino Preparation

  1. Plug Arduino dev board into computer and open Arduino IDE
    1. For our examples, I will be using the Legacy IDE (1.8.19) and an Arduino Uno.
  2. Navigate to the File menu, select examples and open the Arduino as ISP sketch.
    1. {7844F961-6B2C-4672-91E9-E43185B95F4B}.png

  3. Upload the sketch to the programming Arduino.

Circuit Preparation

In order to bootload we are going to use an already functional Arduino Uno; this is not the only way to accomplish this, it is just the way we are documenting today.

The pins required to bootload the target microcontroller are listed below:

Annotated ATMEGA328 Breadboard.jpg

Bootloading the target Arduino

Now that the connections are made, return to the software. Navigate to the tools menu and change your programmer to Arduino as ISP. 

Then select "Burn Bootloader".

{DBE7764B-4AC0-4581-B4A6-64804C2760FB}.png

The software will present this message while bootloading.

{70E87F54-4E30-49BD-8789-ED6952F130FB}.png

If successful you will be met with this message.

{0808C008-A33B-4123-9E4B-7590DA5C9F96}.png

Uploading sketches

Open whatever sketch you wish to upload, and use the sketch menu to "Upload Using Programmer".


Revision #2
Created 2025-10-22 10:17:14 MDT by Lauren
Updated 2025-10-24 16:14:19 MDT by Lauren