はじめに
ESP-WROOM32は、WiFiやBluetoothをいった無線通信機能をもったモジュールです。この無線通信機能を使えるようにすることを目標に、まずは、このモジュールの環境整備と動作テストとしてLEDの点滅プログラムを実行してみます。開発環境は、Arduino IDEを使います。
NodeMCU-32S – ESP-WROOM32
ESP-WROOM32の主な仕様をまとめます。
カテゴリ | アイテム | 仕様 |
Wi-Fi | Standards | FCC/CE/IC/TELEC/KCC/SRRC/NCC |
Protocols | 802.11 b/g/n/d/e/i/k/r(802.11n up to 150Mbps) | |
Frequency range | 2.4 ~ 2.5GHz | |
Bluetooth | Protocols | Bluetooth v4.2 BR/EDR , BLE仕様 |
Radio | NZIF receiver with -98 dBm sensitivity Class-1 , Class-2 , Class-3 transmitter AFH | |
Audio | CVSD , SBC | |
ハードウェア | CPU | デュアルコア low-power Xtensa® 32-bit LX6 |
ROM | 内蔵 448 KByte(boot , core functions) 外部 16 MByte | |
RAM | 内蔵 520 KByte SRAM(data , instruction) 8 KByte SRAM(RTC SLOW Memory) 8 KByte SRAM(RTC FAST Memory) 外部 8 MByte SRAM | |
Module interface | SDカード,UART,SPI,SDIO,I2C,LED PWM, Motor PWM,I2S,IR | |
On-chip センサ | Hall センサ , 温度センサ | |
On-board クロック | 40MHz/26MHz/24MHz 32kHz(RTC) | |
電源電圧 | 2.2 ~ 3.6V | |
電流 | 平均80 mA | |
使用温度 | -40 ~ 85 ℃ | |
ソフトウェア | セキュリティ | WPA/RSA/ECC/SHA |
ネットワークプロトコル | IPv4 , IPv6 , SSL ,TCP/UDP/HTTP/FTP/MQTT |
ここでは、ESP-WROOM32を簡単に使えるようにするため開発ボードNodeMCU-32Sを使います。
機能のピン割り当てが基板の裏側に印字されているので、ブレッドボードに付けてしまうと見えなくなってしまいます。ピン定義図を確認しながら使うピンを選択します。
Arduino IDEでの作成手順
ボードのインストール
Arduino IDEを起動し、[ファイル]-[環境設定]から環境設定ウィンドウを開きます。
リリースリンクのURLを追加のボードマネージャURL欄に下のURLをコピペしてOKボタンを押します。
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
[ツール]> [ボード]メニューから[ボードマネージャー]を開き、「ESP」で検索します。
esp32プラットフォームが表示されるのでそれをインストールします。
[ツール]> [ボード]メニューからESP32 Dev Moduleを選択します。
USB UARTドライバのインストール
USB UARTドライバをダウンロードして、インストールします。
windows10 64bitのパソコンの場合、CP210xVCPInstaller_x64.exe でドライバをインストールします。
LEDを点滅させてみる
USB ケーブルをできるだけ短く(1m以下)粗悪品は避け、USBハブは使用しないようにします。
このあたりは、トラブルシューティングをまとめたサイトを参考にさせて頂きました。
ボードとLEDをつなぎ、ボード上のmicro USB経由でパソコンと接続します。
ここでは、出力ポートとして P22を使用します。
[ファイル]-[スケッチ例]-[01.Basics]-[Blink]からサンプルプログラムBlinkを読み込みます。
pinMode,digitalWrite関数の第一引数のピン番号を使用するピン番号22に修正します。
[ツール]> [ボード]メニューからESP32 Dev Moduleを選択します。
マイコンボードに書き込むため、書き込みボタンをクリックして、コンパイル、書き込みを実行します。
書き込む際に、ESP-WROOM32のブートボタンを押しながらリセットボタンを押します。
これにより、ボードへの接続が完了し、書き込みが実行されます。
書き込み完了後、プログラムが実行され、LEDが点滅します。
まとめ
ここまで、ESP-WROOM32モジュールを搭載した開発ボード NodeMCU-32S を使ってLEDを点滅させてみました。動作の確認はできたので、無線通信機能を使ってデータのやり取りをするプログラムを作っていきたいと思います。
コメント