こんにちは!はしもとです。
前回の投稿から1ヶ月近く間が空いてしまいましたが、今回のブログの内容でかなり詰まっていました^^;
なんとかESP32を使ってSTM32のWi-Fi通信することができたので、それについて2回に分けてブログにまとめていきます。
今回は、まず簡単にSTM32でWi-Fi通信をすることで実現したいことをおさらいしてから、
ESP32のセットアップについてまとめていきます。
ESP32を使い、STM32でWi-Fi通信をすることで実現したいこと
ESP32は、STM32同様マイコンとして使うことができますが、
今回はSTM32のWi-Fiモジュールとして使います。
エンコーダや赤外線センサの情報をSTM32からESP32に送り、それらの情報をESP32を経由してWEBブラウザ上に表示し、マウスの現在状況を可視化することでデバッグをしやすくできればと考えています。
使用した部品
今回は、ESP32とSTM32それぞれの開発ボードを使いました。
また、その他使用した部品は以下のとおりです。開発環境はWindows10です。
- ESP-WROOM-32開発ボード
- STM32 Nuclelo Board STM32F446RE
- 超小型USBシリアル変換モジュール
- micro USB Type-B
- ブレッドボード
- ジャンパワイヤ(オス-オス)
ESP32のセットアップ
ATコマンドのファームウェアをダウンロード
- まず、Windows10が入ったPCを準備し、ATコマンドのファームウェアをダウンロードしてきます。自分の場合は、推奨されていた「v2.2.0.0 ESP32-WROOM-32_AT_Bin_V2.2.0.0.zip」をダウンロードしました。
ESP32に書き込みツールでファームウェアを書き込む
- ESP32の開発ボード とパソコンを USBケーブル(micro USB Type-B)で接続します。
- 書き込みツールFlash Download ToolsをWindowsPCにダウンロードし、解凍します。
- ダウンロードしたファイルの中からflash_download_tool_3.9.2を選択します。
- 下記の選択画面が表示されるので、以下のように設定し”OK”を選択
- 書き込みの設定画面が表示されるので、書き込むファイル、アドレス等を設定します
- 設定するファイル名とアドレス情報はダウンロードした/ESP32-WROOM-32_AT_Bin_V2.2.0.0/ESP32-WROOM-32-V2.2.0.0/download.configにかかれているので、メモ帳やWordで開いて確認します。
- こちらのブログを参考に、左の項目に設定したいファイルのパス、右の項目の@以降にそのファイルのアドレスを設定しました。また、BAUDを115200に設定しました。
- 最後にCOMを選択する必要があるのですが、自分の場合はUSBシリアルコンバータCP2102のドライバがなく、ESP32に接続しているUSBが認識されずCOMを選択できませんでした。
- こちらのブログを参考に、ドライバをダウンロードすると無事COMを選択できるようになりました。
- 設定が完了したら、書き込みを始めます。
ESP32の開発ボードのBootスイッチを押しながらResetボタンを一回押します。その後、Bootスイッチを離し、設定画面左下のSTARTボタンを選択することで書き込みが開始されます。 - しばらくして、設定画面左下の黄緑色の表示がFINISHと表示されれば書き込み完了です。
ATコマンドの動作確認
- ATコマンドを使うことができるか、動作確認を行います。
ESP-AT User Guideの4ページ目「1.2 Hardware Connection」を参考に、ESP32とWindowsPCを繋げます。下記画像は、ESP32と超小型USBシリアル変換モジュールを接続した様子です。
- Tera Termを起動し、ファイル→新しい接続を選択し、ESP32が繋がれたシリアルポートを選択します
- 次にTera Termの設定を以下のように変更します。
設定 → シリアルポート → スピードを115200
設定 → 端末 → 受信(R):CR+LF, 送信(M):CR+LF - ATを入力し、Enterを押して、OKと表示されれば成功です。
- そのほかのATコマンドはこちらをご参照ください
まとめ
今回は、STM32のWi-Fiモジュールとして使用するESP32について、ATコマンドを使用できるまでのセットアップ方法について書きました。
次回は、このATコマンドを用いて、STM32でWi-Fi通信をやっていこうと思います。
それではまた~!