Atmega328p書込装置治具マニュアル

スポンサーリンク

はじめに

Atmega328pはArduino unoに搭載されているマイコンなので、Arduino unoで作ったプロトタイプをそのまま移植できてしまうのが、使い勝手がいいところ。Arduino unoがあれば書込装置としても使えるので、新たに書込装置を揃える必要もありません。ただブレッドボード上に配線していくのは、なかなかフラストレーションがたまるもの。このイライラを解決するために作ったのが「Atmega328p書込装置治具」です。これ単体ではブートローダーやスケッチを書き込むことはできませんが、ブレッドボードに配線する必要がなくなり、もっとクリエイティブな所に時間を使えるようになるはずです。

ちなみに最初に作ったAtmega328p書込装置治具はユニバーサル基板上に配線していました。プリント基板でつくると、カッコよくなりますね!

www.shangtian.tokyo


www.youtube.com

販売ページ

スイッチサイエンスで販売中です。

Atmega328P スケッチ書き込み装置治具www.switch-science.com

目次

スケッチやブートローダを書き込むのに別途必要なもの

この治具単体では残念ながらスケッチやブートローダを書き込みできません。以下どちらかが必須となります。

恐らく、この治具を購入頂いた方は、Arduino Unoを持っている方が多いのではないでしょうか。USBaspは500円前後で購入できる書き込み装置です。この書き込み装置治具はUSBaspの端子に対応していますので、USBaspを使っていただくことをオススメします。一応アマゾンのリンクも貼って置きます。

Atmega328P書き込み装置治具のピンアウト

Arduino IDEのボードマネージャーにAtmega328pを追加する

デフォルトの状態だとAtmega328pにスケッチやブートローダを書き込むことができません。 そこでボードマネージャにボードを追加する必要があります。まずボードマネージャーに追加する準備として 以下のURLをコピーします。 playground.arduino.cc

このアドレスは以下のサイトに記載されています。今回追加するボードは「MiniCore」というやつです。

https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json

URLをコピーしたらArduino IDEの「ファイル>設定」から設定画面を開きます。ここではLinuxで開いた画面を表示していますが、WindowsMacだと少しずつUIが異なっているので注意してください。

Arduino IDE 設定画面
設定画面を開いたら追加のボードマネージャのURLという欄があるはずです。アイコンをクリックすると、URLを入力する画面が表示されるので、先程コピーしたMiniCoreのURLを貼り付けてOKを押して下さい。
Arduino IDEに外部のボードのURLを追加する

それではボードマネージャを開きましょう「ツール>ボードマネージャ」をクリックして下さい。
検索欄に「MiniCore」と入力して検索しましょう。もしヒットしなかった場合は先程追加したURLが間違っている可能性があるので、見直してみて下さい。無事ヒットしたらインストールしましょう。「ツール>ボード」を選択してMiniCoreが追加されていれば成功です。

ボードの設定

ボードマネージャーにMiniCoreを追加できたら、ボードの設定をしていきましょう。 「ツール>Board>MiniCore>Atemega328」でAtmega328を追加します。その後、以下のスクリーンショットを参考に設定して下さい。Portについては設定しなくて大丈夫です。(シリアル通信で書き込む際は必要になります。)

Atmega328pのボード設定

ブートローダーを書き込む

それではブートローダーを書き込みましょう。ブートローダを書き込むにはボードマネージャーにボードを追加し、ボードの設定まで終えている必要があります。まだ終わっていなければ、前項を参考に設定して下さい。

ブートローダの書き込み方法はUSBaspを使う方法とArduino Unoを使う方法の2種類があります。

USBaspを使ってブートローダーを書き込む

まずはUSBaspとAtmega328p書き込み装置治具を接続しましょう。IDCフラットケーブルをUSBaspと書き込み装置治具にせつぞくすればOKです。

Atmega328p書き込み装置治具とUSBaspの接続
書き込み装置の選択をしましょう。以下のスクリーンショットのように「ツール>書き込み装置>USBasp」を選択して追加しましょう。追加したらブートローダーを書き込むをクリックしましょう。これでブートローダの書き込みは終了です。
ArduinoIDEにおけるUSBaspの書込装置の選択

Arduino unoを使ってブートローダを書き込む

まずはArduino Unoを書き込み装置として使うためにArduinoISPをArduno UNOに書き込みましょう。 ArduinoISPスケッチは「ファイル>Examples>ArduinoISP」に有るはずです。
選択するとこんな感じのスケッチが表示されます。Arduino Unoに書き込みましょう。

それではArduino Unoと書き込み装置治具を接続しましょう。配線の対応関係は以下の表にしめしました。 書き込み装置治具のピンソケットにシールが貼られていますので、それを参考にして下さい。

Arduino uno

書込装置治具

D10 (SS)

RST

D11 (MOSI)

MOSI

D12 (MISO)

MISO

D13 (SCK)

SCK

5 V

VCC

GND

GND

Arduno Unoと書き込み装置治具を接続するとこんな感じです。

ArduinoUnoとAtmega328p書き込み装置治具の接続
最後に書き込み装置の選択をしましょう。以下のスクリーンショットのように「ツール>書き込み装置>Arduino as ISP」を選択して追加しましょう。追加したらブートローダーを書き込むをクリックしましょう。これでブートローダの書き込みは終了です。

Arduino Unoを書き込み装置として使うときの設定(Arduino as ISP)

スケッチを書き込む

スケッチの書き込む際の設定や配線についてはブートローダーの書き込みと同じです。

USBaspを使ってスケッチを書き込む

「ツール>Board>MiniCore>Atmega328」を選択してブートローダを書き込んだ時と同様に設定します。 詳細については「USBaspを使ってブートローダーを書き込む」の項目を参考にしてください。
スケッチの書き込みの仕方だけブートローダーの書き込みとは異なります。書き込み装置はUSBasbを選択して「スケッチ>書き込み装置をつかって書き込む」をクリックしてスケッチを書き込みます。

書き込み装置を使ってスケッチを書き込む

Arduino unoを使ってスケッチを書き込む

Arduino unoを用いてスケッチを書き込み方法も同様です。Arduno Unoに「ArdionoISP」を書き込み済みである必要があります。まだ書き込んでいない場合は、「Arduino unoを使ってブートローダを書き込む」の項目を参考にして準備して下さい。ArduinoUnoと書込装置治具の配線についても同様です。

準備が整ったら「スケッチ>書き込み装置をつかって書き込む」をクリックしてスケッチを書き込みます。

Atmega328p書き込み装置治具の回路図

書込装置治具の回路図になります。16MHz水晶振動子を取り付けてあります。シリアル変換器からの書き込みも行えますが、リセット部分にキャパシタと抵抗を挟む必要があります。これは次回作で修正を加えていく予定です。