こんにちは、山下です。
流行ってるみたいなのでESP-WROOM-02 (ESP8266)買ってみました。今回は秋月のDIP基板に乗ったものにしました。WiFi付きのArduinoが650円て考えるとお買い得すぎますね。
早速使ってみようと思ったんですが、USB-シリアル変換モジュールを持ってなかったので、Arduino Unoを使ってやってみます。Uno R3を使いますが、別にこれじゃなくてもできるはずです。
Arduinoは持ってるけどUSBシリアルアダプタは持ってないぜって人は参考にしてください。
ESPへのプログラムの書き込みにはArduino IDEを使うので、『技適済み格安高性能Wi-FiモジュールESP8266をArduinoIDEを使ってIoT開発する為の環境準備を10分でやる方法』を参考にボードを使えるようにしておきます。
まず、ESP-WROOM-02の配線は、以下を参照してください。
あと色んなところに書いてあるんですが、電源はArduinoとかから取ろうとしないで別に用意してください。乾電池2本直列の3V弱でも動きました。ほんとはレギュレータ使ってください。
で、Unoと繋ぐんですが、USBシリアル変換はATMEGA16-U2-MU(小さい黒い正方形のやつ)がやってくれるので、UnoのATmega328pチップは外してしまいます(画像参照)。その上で、
- UnoのTX – ESPのTXD
- UnoのRX – 1kΩ – ESPのRXD – 2kΩ – GND
こう繋ぎます。5V * 2/3 ≒ 3.3Vってことなんで、3.3VのArduinoを使う場合は抵抗いらないはずです。チップは意外と固くはまってるので、端から根気よくクイクイ持ち上げて外してください。 UnoのFTDIをそのまま使うのでRXはRX,TXはTXに繋いでください。
あとは、IO0をGNDに繋いで、Unoをパソコンに繋いだら、Arduino IDEからプログラムできるはずです。
esp8266/Arduinoのサンプルでも実行してみてください。
一度書き込むと次に書き込む前に、電源を落とすかRSTをGNDに短絡してリセットをかける必要があります。
無事ESP-WROOM-02をArduinoとして使って、WiFiの接続確認が取れました。
書き込みじゃなくてシリアル通信したいだけなら、ソフトウェアシリアルでやる方法もあります。
参考になれば幸いです!