Sahara's WebLog

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

ヒューズ・ビットを書き換える。

Fuse BitsというのはPICで言うところのコンフィギュレーション・ビットのようなもののことだと思う。
PICには特に面倒な手順は無くてプログラム時に一緒に書き込まれる設定だ。
AVRではヒューズ・ビットとして別系統で扱われているらしい。
AVRを単体で使う気も無いので、Arduinoの話のついでに時々聞きかじる程度でこれまでは来ている。

ちょっとまとめてみようと思うが、何せ本気ではないので、覚書き程度ということ。

軽く検索して出て来たこのサイトでは以下のように書かれている。

Actually Programming The Fuses
To program stand-alone ATmega chips I used an Arduino Nano as programmer, see Arduino Nano as an ISP Programmer and found the easiest way to set the fuses was to burn a boot loader (the fuses are set as part of the process). The boot loader can then be written over later when you upload a sketch. By editing the boards.txt file in the Arduino installation folder you can use any values you desire for the fuses.

要するに、Arduinoユーザならブート・ローダを書き込むときについでにヒューズ・ビットも書き込んでいるってことらしい。
全く意識してないだけで。
で、それはboards.txtに書いてあるそうだ。
私の環境では以下にあった。
_Arduino-1.8.12¥hardware¥arduino¥avr¥boards.txt
Unoの部分を例にとると下のように確かに書いてある。

ここから読み出して書き込んでるってことだろう。
なので、これを書き換えておいてからブート・ローダを書き込めばついでにヒューズ・ビットも書き変わるという寸法だと思う。
NanoでNanoのブート・ローダを書き換えるとか、手持ちのArduinoボードで相互にブート・ローダーの書き込みをさんざんやっている。
今更書く必要もないだろう(下に関連記事へのリンク)。

要はこれに尽きる。

the easiest way to set the fuses was to burn a boot loader
ヒューズをセットするもっとも簡単な方法はブート・ローダを書き込むこと。

ま、ついでに言えば、RSTDISBL、SPIEN、DWENには手を出すな、ってことらしい。

Arduino Nanoを使ってPro MiniにBootloaderを書き込む
Optiboot 8.0 をNanoに書き込んでみる。
Arduino NanoでArduino NanoにBootloaderを書き込む
Pro Micro 5V,16MHz に3.3V,8MHzの設定で書き込むと認識されなくなる。
某海外通販で購入したArduino UNO R3 互換機で遊ぶ -その06 ブートローダを書き込む-

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

Posted under: Arduino


コメントを残す

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

Time limit is exhausted. Please reload CAPTCHA.