Sahara's WebLog

日記のような、備忘録のような、うらみつらみのような、自慢のような…。

Arduino NanoをAVRライタにしてATmega328P単独でLチカしてみる。(その1)

前置きが長いので、お急ぎの方は読み飛ばして下の「ここからやっと本題」へどうぞ。

中華Arduino UNOクローンを買ったときに秋月で買ったATmega328Pがある。
Arduinoは初めてだったので、万一の場合の予備にでもしようと思ったのだ。
UNOのブートローダを書き込んで、もともとUNOに載っていたのと入れ替えてもちゃんとArduino UNOとして動作することを確認してあった。
某海外通販で購入したArduino UNO R3 互換機で遊ぶ -その06 ブートローダを書き込む-
これで、多少やんちゃしてもマイコンの替えがあるから安心だ、というわけだ。

だが、その後、もともとPICがメインだったことに加えて、ESP8266が登場したりArduinoも格安のNanoを常用するようになったりで、UNOは出番が無くなってしまった。
UNOの出番が無いのに交換用のATmega328Pに出番があるわけがない。
パーツ箱の肥やし、しかも最下層で忘れられた存在になっていた。

このATmega328Pが最近他のパーツを探していて発掘されたので、これを機にAVRとして有終の美を飾らせてやろうというわけだ。
調べてもAVR単体としての使い方がよくわからない、というかどの方法が王道なのかがわからない。
書き込み器にしても、純正品が終了していたり、手作りがいいのかArduinoを使うのがいいのか、百花繚乱状態だ。
開発環境にしても同様で、Atmel Studioがいいのか、MPLAB IDEに統合されたとかいううわさが本当なのか、一向に本筋が見えない。
もともとそういう扱いのマイコンなのか、Microchipに買収されたからなのかわからないが、まあ、PICしか知らない私にとっては混とんとした感じだ。
私の方にこれ以後も使い続けて行こうという気力が無いからかもしれないが…。

個人的な信条としては王道を歩きたいのだが、探してもらちがあかないのでよくわからないまま見切り発車することにした。

Arduinoを書き込み器として使う方法はここに書いてある。
https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard
水晶発振子もコンデンサも手持ちであるが、当初はあえて内蔵クロックを使う方法でやってみようと思った(後に変更)。
ページ中ほどの「Minimal Circuit (Eliminating the External Clock)」を参照する。
が、設定ファイルがArduino IDEの1.6.X用のまでしかない。
うちのは1.8.8だ。
これでいいのかダメなのかもわからない。
検索すると同じことを尋ねてる人がいて、ここを紹介されていた。
https://github.com/MCUdude/MiniCore
そこで、まずはこの説明の通りにすることにした。


ここからやっと本題。


環境
Windows 10 Pro 64BIT
Arduino IDE 1.8.8
Arduino Nano Chinese Clone
Atmel ATmega328P
Breadboard, LEDs, Resistors, Jumpers and Celalock …

1.Arduino IDE 1.8.8(以下IDE)のzip版をダウンロードして解凍する。
 フォルダ内のarduino.exeを実行する。
 英語のサイトを参考にするのでIDEの表示を英語にしておく。


 IDEを再起動すれば英語表記になる。
2.https://github.com/MCUdude/MiniCore#boards-manager-installation
 上の手順でMiniCoreをインストールする。
 さっきと違って英語表記のPreferencesへ。

 Additional Boards Manager URLsの欄に

 をコピペする。

 Tools > Board > Boards Manager…とたどり

 下の方にMiniCoreがあるはずなので探してInstallする。

 下のように表示されるようになってればOKだ。

Arduino NanoをAVRライタにしてATmega328P単独でLチカしてみる。(その2)」へ続く。

このエントリーをはてなブックマークに追加

Posted under: Arduino, PIC以外, 電子工作その他


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.