Program Resource

開発者向け各種コード、アルゴリズム、リソース情報ライブラリ もしくはねふぁの覚え書き

何らかの原因でマイコンのデータが破損しブートローダーが消えてしまった、そもそも製品出荷時にマイコンにブートローダーが書き込まれていないなどして、ArduinoをPCに接続すると認識はするもののスケッチが書き込めない事がある。以前中国から購入したArduino Nano互換機はブートローダーが書かれていない事が多々あった。

ハード的には問題無くブートローダーがおかしくなっている / 書き込まれていない状態であれば、ブートローダーを書き込む事でArduinoが復活する可能性が高い。

Arduino UNOであればブートローダーがおかしいか確認する方法の一つとして、Arduinoを通電した際にオンボードのLEDの点滅を見て判断する。ボード上に付いている「L」と書かれたLED。

正常な状態であれば、Arduino UNOを通電した際直後に高速で数回点滅する。通電直後から点滅せず点灯状態が続く様であれば、ブートローダーが正しく動作していない可能性がある。

正常なArduinoを使ってブートローダーを書き込む

正常に動作するArduinoがあれば、正常なArduinoと修理したいArduinoをワイヤーで接続してブートローダーを書き込む事が出来る。 正常なArduinoをAVR ISP(プログラマ)として使用する。AVR ISPとして動かすためのスケッチが標準でArduino IDEに含まれているので、スケッチ例→ArduinoISP→ArduinoISPを開いて書き込む。

ブートローダーを修復したいArduinoと正常なArduinoを準備し、ワイヤーでピンを繋ぐ。

正常なArduino 修復対象Arduino
5V 5V
GND GND
D10 RESET
D11 D11
D12 D12
D13 D13

ICSPピンに繋ぐ方法もある。

正常なArduino 修復対象Arduino
5V Vcc (ICSP-2)
GND GND (ICSP-6)
D10 RESET (ICSP-5)
D11 MOSI (ICSP-4)
D12 MISO (ICSP-1)
D13 SCK (ICSP-3)

ICSPピンは基板端にある6本のオスピン。Arduino UNOやNanoのUSB側を左側にした場合、Unoは左上がピン1、Nanoは右下がピン1と、配置が逆になっているので接続の際はピンを良く確認する。

ピン1を左上とした場合のピン位置と役割は以下の様になる。

1 – MISO 2 – +Vcc
3 – SCK 4 – MOSI
5 – Reset 6 – GND

Arduino UNO同士を接続する場合の配線

Arduino UNOとArduino Nanoを、ICSPを使い接続する場合の配線

Arduino UNOとArduino Nanoを、デジタルピンを使い接続する場合の配線

配線が出来たら、ブートローダーを書き込むArduinoの種類をボードに設定し、書き込み装置として「Arduino ISP」を選択、「ブートローダーを書き込む」を実行する。

コメントを残す

メールアドレスが公開されることはありません。


*

CAPTCHA