Mrshn Diary

徒然大草原

ESP-WROOM-32 の書き込み

本記事では,ESP-WROOM-32( 以下,ESP32 )のDIP化基板について電源供給からプログラムの書き込みまでの工程を書いていきます.他の文献とあわせて参考程度に見ていただけると幸いです.

使用した部品

  • ESP32DIP化キット ( 秋月 )
  • シリアル変換器 FT232HL
  • 5V-3.3Vレギュレータ ( 2A以上流せるもの )
  • その他 ( ジャンパ,トグルスイッチ,抵抗,ダイオード等 )

ハードウェア

基板は下図のような感じで作成しました.

f:id:Mrshn:20191212150501p:plain

ESP32の電源供給・書き込み用回路基板

電源周りの配線

ESP32の電源には,3.3V,2A程度を入れる必要があります.

上の基板では,5V-3.3Vで2Aを流せるレギュレータを接続しています.中央あたりにあるXAコネクタ部分に5V,2Aのバッテリをつなぐ前提で作成しました.

3.3V,2A出力のACアダプタがあれば,直接電源を供給してやれば動くはずです.ただし,5V電源が欲しい場合やコンセントから切り離したい場合には,レギュレータを用いた回路を作成する方が良いと考えられます.

書き込み用の配線

図中 下の2ピンは書き込み用のTXRXです.自動書き込み機が手持ちになかったので,今回はシリアル変換器を用いて手動で書き込みを行います.

回路図の左上にある2つのスイッチは書き込み用のスイッチで,ENピンにつながる方は10kΩでプルアップをしています.もう一方はIO0とGNDを接続しています.これはESP32のリセットピンとなります.

書き込みの準備

Arduino IDEによる書き込み準備

ESP32の書き込みには,ArduinoIDEでボードマネージャからセッティングして使うのが一般的で,他の記事だけで十分足りると思われますので,そちらを参考にしていただければと思います.書けよって言われたら書きます.

手動書き込みの手順

ESP32はシリアル変換器のTX,RX,GNDの3本をそれぞれESP32と接続します.

書き込みは,ENピンのボタンを押した状態でリセットをかけると,書き込みが可能な状態となります.書き込みが始まったらENピンのボタンを離します.そうすると,ArduinoIDEのコンソールにパーセンテージが表示され,書き込みが始まります.このとき,コンソールがスクロールされなくて進んでいないように見えても勘違いしないようにします.

書き込みが完了すると,リセットを押してください的なメッセージがコンソールに出ます.そして,リセットボタンを押すとプログラムが動作し始めます.

あとがき

今回はESP32の書き込みまでを簡単に記事にしてみました.回路を作成する手間を考えると,値段は多少上がりますが素直に開発ボードを買うと良いと思いました.ESP32はWi-FiだけでなくBLEもでき,I2C通信などのピンも多くあるため,通常のマイコンとしても優秀です.プログラムについて触れられたら良いなと思っています.