ホーム > カテゴリ > ロボット・電子工作・マイコン >

ESP-WROOM-02にArduinoのスケッチを書き込む [配線図/GPIO]

WifiモジュールのESP-WROOM-02に「Arduinoのスケッチ」を書き込み、Arduinoのように使用する方法です。これにより、マイコン本体の費用が2940円から650円になります。さらにWifiが使用できてマイコンボードのサイズが約1/3になります。

[ESP-WROOM-02単体でLEDを点滅]

※この記事ではESP-WROOM-02のファームウェアを上書きするので「ATコマンド」が使用できなくなります。

目次

1. 使用部品・材料
2. Arduino IDEへ開発ボードを追加する
3. 配線図(書込用/実行用)
4. ESP-WROOM-02のGPIO(汎用入出力)
5. スケッチ(プログラム)
6. コンパイルエラー / 書き込みエラー

1. 使用部品・材料

総額で約1980円です。(Arduinoは使用しません)

部品/材料値段備考
ブレッドボード¥270秋月電子の通販コード(P-00315)
Wi-Fiモジュール
ESP-WROOM-02 DIP化キット
¥650秋月電子の通販コード(K-09758)
FT232RL
USBシリアル変換モジュール
¥950秋月電子の通販コード(K-01977)
USBケーブル
Aオス-ミニBオス 1.5m A-miniB
¥110パソコンとFT232RLを接続するUSBケーブル。

秋月電子の通販コード(C-07606)
カーボン抵抗器数円10kΩ(4個)、220Ω(1個)を使用
LED¥10赤色(1個)を使用
電池と電池ボックス(任意)単三電池x2本と電池ボックス
※FT232RLから電源を取れば不要。

USBシリアル変換モジュールは1つあれば他の用途にも使用できます。

2. Arduino IDEへ開発ボードを追加する

IDEを起動してメニューの[ファイル][環境設定]を開きます。下部にある「追加のボードマネージャのURL」に次のURLを入力します。

http://arduino.esp8266.com/stable/package_esp8266com_index.json

次に[ツール][ボード]の「ボードマネージャ」を開きます。

そして、「esp8266」をインストールします。

※インストールにはしばらく時間がかかりますので待ちましょう。

ダウンロード時にエラーが発生しました。というエラーが表示される場合は、ウイルス対策ソフトやファイアウォールでArduinoを許可するか、それらを一時的に停止してください。

インストールが完了すると開発ボードに「Generic ESP8266 Module」などが追加されます。

3. 配線図

Arduinoスケッチを書き込む際には「書き込み用」で、実行する場合は「実行用」の配線を行います。「書き込み用」と「実行用」は2つのブレッドボードに分けて用意して置くと便利です。

配線の違い

書込用実行用
IO010kΩ抵抗経由でGND10kΩ抵抗経由で3.3V
IO210kΩ抵抗経由で3.3VNC(未接続)
IO15GNDGND

書き込み用(UART Download Mode)

実行用(Flash Boot Mode)

電池、電池ボックスがない場合は「FT232RL USBシリアル変換モジュール」の3.3V電源とGNDで代用する事が可能です。

※今回のサンプルで使用するLED関連部分を除けば汎用の配線図です。
※LEDに必要な抵抗は「3.0V / 0.03A(30mA) = 100Ω」ですが、大きめの220Ωを使用しています。

4. ESP-WROOM-02のGPIO(汎用入出力)

ESP-WROOM-02のピン番号とArduinoとの対応表です。

この表をみながらArduinoスケッチで使用できるピン番号を確認します。今回のLチカのサンプルでは「IO5」を使用しますのでpinMode(5, OUTPUT)となります。

※この表はけーいち氏によるライセンスがCC0のESP-WROOM-02用の「PinOut Diagram」です。

次はumi_kappa氏によるピンの対応表です。

デジタルInput/Output(PWM含む) 対応ピン

IO12、IO13、IO14、IO15、(IO16)

デジタルOutputのみ(PWM含む) 対応ピン

IO0、IO2、IO4、IO5

アナログInputのみ対応

TOUT(A0)

IO0、IO2、I015は「書込、実行モードの判別」で使用されているので、避けた方が良いです。また、スケッチを書き込みする際にはGPIOのリード線(Input/Output)を抜いてから書き込みします。書き込み後は「実行用の配線」で実行します。

注意事項

TOUT(A0)の入力電圧は「0~1.0V」ですので、3.3Vからの電源を使用すると最悪、ボードが壊れる可能性があります。分圧回路などを使用して最大で1Vにする必要があります。

5. スケッチ(プログラム)

このスケッチではIO5ピンを使用してLチカをします。

Arduinoのツールバーの左から2番目のアイコンで「スケッチを書き込む」前にメニューの[ツール][ボード]で「Generic ESP8266 Module」を選択して下さい。また、[ツール][シリアルポート]も任意のポートを選択します。

※ESP8266が2.4.1の場合は[ツール]の「Crystal Frequency」を「26MHz」にするか、[ツール][ボード][ボードマネージャー]で最新版にします。

void setup() {
  pinMode(5, OUTPUT);
}

void loop() {
  digitalWrite(5, HIGH);
  delay(1000);
  digitalWrite(5, LOW);
  delay(1000);
}

6. コンパイルエラー / 書き込みエラー

スケッチを連続して書き込むと、次のようなエラーが表示されます。(スケッチを書き込む度にプロテクトされるみたいです)

warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed

対処方法は書き込みをする前にUSBケーブルをはずして、電源を一度、落とせばOKです。





掲示板

ArduinoやRaspberry Piなどの電子工作の掲示板を作成しました。質問やわからない事は電子工作 (Arduino・ラズパイ等)でユーザー同士で情報を共有して下さい。

関連記事



公開日:2017年04月13日 最終更新日:2018年08月03日
記事NO:02323