【最小構成】ATmega328Pを単体で動かす

11/04/2022

Arduino マイコン

t f B! P L
atmega328p-standalone

最近、ブートローダーの書き込まれていないATmega328Pを秋月電子通商で購入しました。
少し調べてみると、どうやら動かす方法が外部クロックと内部クロックの二種類あるようで、内部クロックに関しての記事がインターネット上にほぼ無かったので、備忘録も兼ねて記事にしてみました。

ATmega328Pを内部クロックで動かす 

Note

この方法でATmega328Pを内部クロックで動かすためには外部クロック用のブートローダーが書き込まれていないATmega328Pを用意する必要があります。

追加のハードウェア構成のインストール

まず、ATmega328Pを内部クロックで動かすためにハードウェア構成を追加する必要があるので、Arduino公式サイトからbreadboard-1-6-x.zipをダウンロードして解凍します。 

環境設定

Arduino IDEを開き、ファイル→環境設定→設定→スケッチブックの保存場所に記載されているArduinoフォルダに移動します。
hardwareフォルダを新規作成し、hardwareフォルダの中に先ほど解凍したbreadboard-1-6-x.zipの中にあるbreadboardフォルダをコピーします。

現在のフォルダ構成
Arduino
└─hardware
  └─breadboard

breadboard-avr

Arduino IDEを再起動し、ツール→ボードの中にbreadboard-avr (in sketchbook)の項目があれば導入成功です。

ブートローダーの書き込み装置の準備 

 

ArduinoISPの位置

ブートローダーを書き込むために今回はArduino Unoを使用します。
Arduino UnoをPCに接続し、ファイル→スケッチ例→ArduinoISP→ArduinoISPを選択します。
ツール→ボードが"Arduino Uno、書き込み装置がAVRISP mkIIになっていることを確認し、スケッチを書き込みます。

ブートローダーの書き込み

 出典:arduino.cc

ArduinoとATmega328P(向きに注意)を上の図のように接続し、ツール→書き込み装置をArduino as ISPに変更します。ArduinoISPではないので注意してください。
ツール→ボード→ breadboard-avr (in sketchbook)→ATmega 328 on a breadboard (8MHz internal clock)を選択し、ブートローダーを書き込むを選択してブートローダーの書き込みを行います。

スケッチの書き込み

 出典:arduino.cc

ArduinoからATmega328Pを取り外し、ATmega328Pと上の図のように接続します。
あとは普段のようにスケッチを書き込むだけです。お疲れ様でした。