---
parent: Arduino
title: ArduinoでArduinoにスケッチ書き込み
date: 2016-12-8
children:
    Optiboot
    SketchWriter
---

Arduinoにプログラムを書き込むにはパソコンが必要です. 
パソコンでプログラムを書きArduinoをパソコンに接続し、スケッチをマイコンボードに書き込みます.
別のプログラムを実行したいとき、またパソコンに接続してスケッチを書き込みます。
これは大変労力かかると同時にパソコンなしではプログラムの変更は不可能です.

このページでは、それを解決する一つの方法を提案します。
それは, Arduinoが別のArduinoへスケッチを書き込むということです.
詳しく言うと, スケッチをコンパイルした後に作成されるHexFileをSDカードに保存し, 
そのHexFileをある一つのArduinoが読み込み別のArduinoへスケッチを書き込むということです.

このページで紹介する方法で以下のことができます。

* ArduinoでArduinoにスケッチ書き込み
* 他機能の組み合わせで応用可能

"他機能の組み合わせで応用可能"の例ですが, ある端末を作ったとします。
その端末にはグラフィック液晶ディスプレイ、コントローラーが付いています。
使用者にグラフィック液晶でスケッチの選択をさせることで、一つの端末で複数のプログラムを実行することができます; 
パソコンでいちいちスケッチを書き込む必要はありません。


[対応環境]
=======================================
    ただし、以下の環境が必要です。
    
    # スケッチを書き込まれるArduinoにはブートローダー"optiboot"がかきこまれていること
        optibootがかきこまれているArduinoは"Arduino UNO"です。このサイトでもこれを使用しています。
    
    # スケッチを書き込むArduinoは16MHzで動作していること
        optibootとの通信には115200bpsのシリアル通信が用いられています。
        8MHzなどの低周波数で動作するArduinoではこの通信がうまくいきません。

=============================================

===