ATMega328PUを単体8Mhzで動作させる(重要補足事項)
こんにちは かなで です。
前回、前々回と、ATMega328PUを内蔵クロック8MHzで動作させるための方法について記事にしましたが、とっても重要なことを書き忘れておりました…
過去記事に追記すればいいんですが、説明的に多めで、ごちゃごちゃがさらにごちゃごちゃするので、本記事にまとめることにしました。
肝心の内容ですが、過去記事をそのまま進めると躓く場所があります。
ボードで「ATmega328 on a breadboard (8MHz internal clock)」を選ぶところです。
実はこれ、標準では用意されていないもので、独自に取り込む必要があるものなんです。
取り込む前に
今すでに似たようなものが表示されていて、うまくいってるんならいいですが、もしうまくいってない場合は、一旦それを削除するのをお勧めします。
というのも、他サイト様でも、同じ文言のボードを追加する方法が書いてあるのですが、その方法ではうまくいかなかったからです。
おそらく、現在の最新バージョンArduino 1.8.19だと記載の仕方が違うからのようです。
試行錯誤の上、Arduino 1.8.19でも使える「ATmega328 on a breadboard (8MHz internal clock)」を作りましたので、こちらを使用してみてください。
取り込み方法
標準では「C:\Program Files (x86)\Arduino\hardware\arduino\avr」配下に「boards.txt」というファイルがあります。
ただのテキストファイルなので、メモ帳で開いてください。
適当に上下にスクロールさせると「###########~」で区切られた10~20行くらいのセットがいくつもあるのがわかると思います。
このファイルの最後に以下をコピペで追加してください。
############################################################## atmega328p8mclk.name=ATmega328 on a breadboard (8 MHz internal clock) atmega328p8mclk.upload.tool=avrdude atmega328p8mclk.upload.protocol=arduino atmega328p8mclk.upload.maximum_size=30720 atmega328p8mclk.upload.maximum_data_size=2048 atmega328p8mclk.upload.speed=57600 atmega328p8mclk.bootloader.tool=avrdude atmega328p8mclk.bootloader.low_fuses=0xE2 atmega328p8mclk.bootloader.high_fuses=0xDA atmega328p8mclk.bootloader.extended_fuses=0x05 atmega328p8mclk.bootloader.unlock_bits=0x3F atmega328p8mclk.bootloader.lock_bits=0x0F atmega328p8mclk.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex atmega328p8mclk.build.mcu=atmega328p atmega328p8mclk.build.f_cpu=8000000L atmega328p8mclk.build.board=AVR_ATMEGA328P_8M_CLK atmega328p8mclk.build.core=arduino atmega328p8mclk.build.variant=standard
上書き保存します。
Arduino IDEを再起動すると

ツール→ボードの欄に「ATmega328 on a breadboard (8 MHz internal clock)」が追加されます。
これで使えるようになりました。
その他注意点
他サイト様を見てると、上記の場所ではなく、
C:\Users\ユーザ名\Documents\Arduino\hardware\breadboard\avr\配下にboards.txt等(他のファイルもセットで)置くパターンもあります。
この方法だと、たしかに「ATmega328 on a breadboard (8 MHz internal clock)」は表示されるのですが、
書込装置が選べなくなるようです。(不具合?仕様?自分の書き方が悪い?)
ですので、「C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt」に追加する形をとりました。
ただ、こちらもデメリットがありそうで、たぶんArduino IDEのバージョンアップの際に上書きされてしまうんじゃないかな~と思います。
なので、バージョンアップの後使えなくなったら、再度書き加えてあげる必要があるかなと思います。この辺は推測ですいません。
知見ある方は教えていただけると幸いです。
最後までお読みいただきありがとうございました。
気になることがあったら、コメント頂けると嬉しいです。
自主学習も兼ねて記事にするかもしれません。