2016年12月12日月曜日

ESP-WROOM-02を秋月のFT232RL USBシリアル変換モジュールで使ってみる。


師匠のtozさんにESP-WROOM-02本体をもらっていたが、端子ピッチが1.5mmとなんとも中途半端でなかなか実験できないでいた。あきらめてaitendoで変換基板 [IFB1518J-A]を買って使ってみた。

秋月の変換基板の方が安いが、なんか変な形だし、aitendoの通販無料会員になっているのでaitendoの方にした。

表面実装だが1.5mmピッチだし楽勝と思っていたが、モジュールの裏面にはんだが回ってブリッジするので結構難儀した。←はんだ吸い取り線がなかなか効かない。

手はんだでやるなら適量のはんだを基板に盛ってえいやっで引きはんだした方がいいかも。



配線図




でかいブレッドボードを使っているのは理由があって、幅が広くて普通にブレッドボードに載せると配線するスペースがなくなってしまう。秋月の変換基板は変な形しているが、ピンが出ている部分の幅が狭いので普通のブレッドボードでも配線しやすいんだと思う(^q^;

ESP-WROOM-02のIO0(Pin8、ブレッドボード図の青色のケーブル)をGNDにつなぐと書き込みモード、3.3Vにすると実行モードになる。

FT232RLモジュール(AE-UM232R)のジャンパーは

JP1 1-2 ショート
JP2 1-2 ショート

にする。USBから電源を供給し、VIOは3.3Vの設定になる。このジャンパの設定だとUART(TX/RX)の信号レベルも3.3Vになる。JP1を2-3ショートにしてVIOを5Vにすると信号レベルは5Vになる。←やっと確認した。

Arduino IDEの準備


Arduino IDE 1.6.4の「ファイル」-「環境設定」の「Additional Boards Manager URLs:」に「http://arduino.esp8266.com/stable/package_esp8266com_index.json」を入力

「スケッチ」-「inlclude Library」-「Manage Libraries...」で「esp8266」をインストール

「ツール」-「ボード:」で「Generic ESP8266 Module」を選択

「ツール」-「Reset Method:」で「nodemcu」選択←まだ、よくわかっていない(^q^;

「ツール」-「ポート:」でFT232RLモジュールに割り当てられたポートを選択

Arduinoのスケッチ

ESP_WROOM-02_Blink

const int LED = 4;

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

void loop() {
  digitalWrite(LED, LOW);
  delay(100);
  digitalWrite(LED, HIGH);
  delay(200);
}


ExampleのESP8266/Blinkでも動作するが、LEDが書き込みで使うUARTのTXDと同じGPIO1なので、別にGPIO4(Arduinoだとint型の4になる)を指定した。

書き込み時には、IO0をGNDに接続して書き込む。書き込み完了後、いったんUSBケーブルを抜いてIO0を3.3Vに接続する。ふたたびUSBケーブルをつなぐとLEDがチカチカする。

Lチカだけでも電波が飛んでるようだ。


メモ:


ESP-WROOM-02はもう少しあっさりした感じだと思っていたが、結構いろいろいじりがいがありそう。