arduinoのATMEGA328P-PUを単体で動作させる方法

※記事内に商品プロモーションを含む場合があります

arduino UNO で作ったシリアルデータロガーをユニバーサル基板に移す時に
ピン配置などが分からなかったのでまとめてみました。

ATMEGA328P-PUを単体で動作させるのに必要なパーツ

  1. ICソケット
  2. 0.1μFコンデンサ(パスコン)
  3. 22pFコンデンサ
  4. 16Mhz クリスタル
  5. ATMEGA328P-PUマイコン(ブートローダー書き込み済)

22pFのコンデンサと16Mhzのクリスタルは
16Mhzのセラロックで代用できますが水晶の方が精度が高いです。

リセットボタンが必要なら

  1. 10KΩの抵抗(プルアップ用)
  2. タクトスイッチ

の2つが必要です。

マイコン以外は秋月電子通商で入手できます。

arduinoのATMEGA328P-PUを単体で動作させる回路図

atmega328pin

こちらのサイトを参考にしました。

自作Arduino互換回路の作成

分かりにくかったので動作に必要な回路と、arduinoのピン配置をまとめてみました。
大体、上の様な配置です。

arudinoは水晶による外部発振なのでデジタル4の間にあるオレンジ色
XTAL1とXTAL2に16Mhzの水晶を接続します。
後、両端子とGND間に22pFのコンデンサを接続します。

VCCとGND間の0.1μFのコンデンサはパスコン、
無くても動作すると思いますが、入れておいた方が良いと思います。

リセットボタンは、10KΩの抵抗をVCCとRESET間に接続してRESET端子をプルアップします。
タクトスイッチをRESET端子とGND間に接続します。
タクトスイッチを押すとRESET端子がGNDに落ちるのでリセットされます。

電源電圧はArduinoでは5VですがAD変換を使わなければ乾電池4本などでも
動作はすると思います。
もしかしたら壊れるかもしれないのでそのあたりは自己責任でお願いします。

電源電圧は3.3Vでも16Mhzで動作しますが、AD変換の精度が悪い気がします。

ATMEGA328P-PUを買うときに注意したい事

ATMEGA328P-PUは秋月電子通商で250円で売っていますが、注意点があります。
秋月で売っているATMEGA328P-PUにはブートローダーが書き込まれていません。
なので、ブートローダーを先に書き込まないと、Arduino IDEでスケッチを書き込む事が出来ません。

マルツやスイッチサイエンスには、ブートローダー書き込み済のATMEGA328P-PUが売られていますが
スイッチサイエンスでも360円と割高です。

自分でも書き込む事は出来ますが、方法はいろいろあるみたいなので検索してみてください。

ブートローダーの書き込み方法などは、別の記事でまとめたいと思います。

あとがき

Arduino UNOはボード単位なので不便かなと思いましたがマイコンを基板に移して作れるので
意外と便利かもしれません。

また、PICでは必要なコンフィグレーションやTRIS・ANSELレジスタなどの設定が不要で
分かりやすいですし、シリアルでデータが見れるのでデバックもしやすいです。
また、プログラム領域も32キロバイトと大きいですし、コンパイルから書き込み&シリアルモニタによる
デバックがボード1つで出来ます。

今後は小物・低消費電力以外はArduinoで作ろうかと思っています。