Programming Technology

ESP-WROOM-02にArduinoでプログラムを書き込む(2)

Programming
スポンサーリンク

こんにちは、Reveです。
前回に引き続き、ESP-WROOM-02でIoT電子工作っぽいことをする記事です。
今回はいよいよ開発環境の準備に入ります。
【電子回路】
ここでは、ESP-WROOM-02にファームウェアを書き込むための回路を作っていきます。
(前回出てきたESPr Developerを使う場合は不要)
早速ですが、回路図です。
ESP8266_program_circuit_r1.jpg
(青の楕円はコンデンサ、角丸の黒い長方形は抵抗です。)
ちなみに、当方は秋月電子のXBeeインタフェースボードで代用していましたが、ピンの対応は以下の通り。
特にTX、RXピンはデータシートのDIN、DOUTと逆に配線しなければならない事に注意です(FTDI USBシリアル通信ICとXBeeが対に配線されているため)。
3.3V: 1(VCC)
TX: 3(<- XBeeのDINと対)
RX: 2(<- XBeeのDOUTと対)
RTS: 16(RTS)
DTR: 9(DTR)
GND: 10(GND)

配線をつないだ写真がこちら。
ESP8266_circuit_pic1
回路の機能は2つあります。
(1)USBシリアル通信モジュールとの接続
(2)自動プログラム用のモード切替(任意)

ジャンパ切り替えやリセットボタン押下なしの自動プログラム (Auto Program)を実行できるようにしており、NodeMCUのシステムを基に実装しています。
NodeMCUはWi-Fiモジュールの一つでESP-WROOM-02より安いのですが、技適を通っておらず、日本国内では使用できません。ですが、回路や自動プログラムのシステムは流用できるため、これを導入することにしました。
【プログラム開発環境】
続いて、プログラミング環境の構築に移ります。
まずは、Arduino IDEの環境設定に入ります。
esp8266_arduino01.png
Arduinoの開発環境で、「追加するボードマネージャー」に以下のURLを貼り付けます。
http://arduino.esp8266.com/stable/package_esp8266com_index.json
esp8266_arduino02.png
そのあと、ボードマネージャーを開きます。
esp8266_arduino03.png
ESP8266モジュールをインストールします。
esp8266_arduino04.png
ESP8266へプログラムを書き込むための設定として、「Generic ESP8266 Module」を選び、Reset Methodを「NodeMCU」とします。
esp8266_arduino05.png
esp8266_arduino06.png
以上でプログラムの開発環境も構築できました。
ファームウェア制作とテストについては次の記事で書いていく予定です。 → 更新しました。
【参考】
自動プログラムのほうは、こちらの回路を参考にしました。
http://ht-deko.com/arduino/esp-wroom-02.html#13_08

なお、シリアル通信による書き込みは、自動プログラム回路なしでも、ピンを適切な場所につなげれば可能です。
(ESP-WROOM-02) <–> (USBシリアル通信モジュール)
3.3V <–> 3.3V
GND <–> GND
TXD <–> RX
RXD <–> TX

また、ESP-WROOM-02のEN、IO210kΩ抵抗でプルアップし、
IO010kΩ抵抗でプルダウンする必要があります。
なお、書き込んだプログラムを実行するにはIO0をプルアップしてください(IO0で書き込みと実行モードを切り替えるイメージです)。

コメント

タイトルとURLをコピーしました