Arduinoにブートローダーを書き込む方法

どうも、なかしー(@nakac_work)です。
僕は自動車や家電製品のマイコンにプログラミングをする組み込みエンジニアとして働いています。

Arduino初心者
Arduino初心者

ArduinoのIC単体を買ったけど、スケッチ(プログラム)を書き込めないよ!書き込みに必要なブートローダーって何?

といった疑問を解決します。

ブートローダーは、Arduinoにスケッチを書き込んだり、プログラムを実行させるのに必要な機能です。

なかしー
なかしー

Arduinoにブートローダーを書き込めるようになれば、ICだけ購入して複製できて費用を抑えれますよ!

この記事では「Arduinoにブートローダを書き込む方法」について紹介します。

Arduinoのブートローダとは?

ブートローダには、ROM(不発揮性メモリ)にプログラムを書き込むのか、それともプログラムを実行するのかを管理する役割があります。

電源を入れるとブートローダが動作をして、USART通信の状態を監視します。
もしも、パソコンからデータが送られてきているようなら、プログラムの書き込みと判断します。

プログラムはROMに書き込まれ、RAMに移動させることで実行されます。
移動させるのもブートローダの役割です。

Arduinoにブートローダを書き込む方法

Arduinoにブートローダを書き込むときは、Arduinoのマイコンボードではなく、搭載されているICを単体で購入したときです。

単体で購入することで余計な部品が付いてこないので、マイコンボードを購入するよりも安価で済みます。

Arduinoにブートローダを書き込むための接続と操作の方法を紹介します。

ブートローダを書き込むための接続

ブートローダを書き込むのに必要な部品を紹介します。

  • Arduino UNO
  • ブレッドボード
  • ジャンパーワイヤー
  • 水晶発振器(16MHz)→1個
  • コンデンサ(22pF)
  • 抵抗(10kΩ)→1個

Arduinoを動かすために必要な部品と同じです。
Arduino UNOと部品を下の表の通りに繋いでください。

ブートローダーを書き込むICArduino UNO側
1ピン※1DIGITAL 10
7ピン+5V
8ピンGND
9ピン※2水晶発振器
10ピン※2水晶発振器
17ピンDIGITAL 11
18ピンDIGITAL 12
19ピンDIGITAL 13
20ピン+5V
22ピンGND

※1抵抗はブートローダーの1ピンとGNDに繋げます。
※2コンデンサは水晶発振器の両端とGNDに繋げてください。

ブートローダを書き込む操作

Arduino IDEの「ツールタブ」をクリックして、下から2番目の書込装置を「Arduino as ISP」に変更します。

その後、「ツールタブ」を再びクリックして、「ブートローダを書き込む」を選択すれば実行されます。

Arduinoにブートローダーを書き込む方法|まとめ

この記事では「Arduinoにブートローダーを書き込む方法」について紹介しました。

Arduinoを動かすために必要な部品をICに接続し、Arduino IDEを操作してブートローダを書き込むことができます。

もしも、ArduinoのICを使って基板を複製をしたいときは、この方法で書き込むことで、購入費用を抑えることができるメリットがあります。

人気記事

>>電子工作の始め方【回路設計からプログラミングまで可能にする方法】

>>Arduinoをゼロから勉強する方法【参考書は不要】

>>ラズベリーパイで実現できることを紹介

当ブログで人気のArduino入門キット

第1位:Arduino UNO スターターキット
Arduino UNOのスタータキットです。電子工作でよく使う部品が一式揃っており、バラバラで購入するより格段に安いです。
第2位:ELEGOO Arduino用のUNO R3 最終版スタータキット
こちらも電子工作によく使う部品が第一位のスタータキットよりたくさん入っています。とてもお買い得です。
第3位:ELEGOO Arduino MEGA 2560 R3
UNOの上位互換版MEGAのスターターキットです。これだけ入っていれば十分に電子工作の基本をマスターできることでしょう。
エンジニアが教えるArduino入門講座のまとめ【解説動画付き】