先日はATTiny44Aへの書き込みを行いましたが、今回はATmega88Vへの書き込みを行いました。
大まかな流れは以前と同じなのですが、書き込み装置として使用するArduinoへの設定は省略できます。
なので、今回はボードパッケージのインストールからスタートです。
以前の記事はこちら。
インストールするボードパッケージは、ここから探します。
この中にATmega88Vは見つかりませんが、ATmega88ならあります。
「ATmega88VはATmega88を省電力化したもの」ですので、基本的な設定はATmega88と同じと考えて進めます。
データシートを見ても同じようにまとめて書かれているし、きっと大丈夫。
今回私が使用したパッケージはこちら。
MiniCore
https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json
これを、Arduino IDEの「環境設定」→「追加ボードマネージャーのURL」に貼り付けます。
その後、「ツール」→「ボード」→「ボードマネージャー」から、「MiniCore」をインストールします。
これでボードの追加は完了です。
次は、ヒューズビットの設定を見ていきます。
私は5か所の設定を変更しました。
(もしかしたら初期設定のままのものもあるかもですが、意識して触ったのがこの5か所)
ボードはATmega88を選びます。
クロックは、Internal 8MHz を選びました。
ここのクロックは、Lチカを使って色々と実験してみたのですが、Internal 2,4,8MHzは正常に動作しました。
Internal 1MHzにすると、4倍速くらいで点滅していたので、うまく動いていないような気がします。
なので、周波数を下げて使いたい場合は2MHzまでにしておくのが無難な気がします。
省電力化のためには、周波数を下げて使うことが有効です。
BODの設定は、Disabledにしました。
BODは電圧が下がってきたときにリセットをかけてくれる機能ですが、今回は省電力化のためにDisabledにしました。
必要なら他の設定にしても良いと思います。
Variantは88/88Aを選択しました。
ここの選択は少し悩みましたが、データシートなどでは88Vは88と同等に書かれていることから、88が含まれている88/88Aを選択しました。
BootloaderはNo bootloaderにしました。
今から使用するATmega88Vにブートローダーは書き込まないので、No bootloaderにしました。
もしブートローダーを書き込みたいのであれば、Yesのほうを選択してください。
これらの設定が完了したら「ブートローダーを書き込む」で設定を書き込みます。
あとはATmega88Vに書き込みたいスケッチを作成して、書き込んでみます。
データシートだと、デジタルピンやアナログピンの配置が分かりづらかったのですが、下記のサイトが参考になりました。
ATmega8とATmega88のピン配置が同じことはデータシートで確認しました。
Arduino Nanoを書き込み装置として、ATmega88Vを接続します。
書き込み時の接続はこのようになります。
とりあえずLチカのプログラムを書き込んで光らせてみました。
しっかりと光ることを確認しました!
ATmega88Vはメモリが8kBあるので、ATTiny44の4kBに比べると2倍もあってだいぶ余裕がありますね。
28ピンなので、色々と凝ったことをやりたい場合も安心です。