# マイコン~ ESP32 ~を始める
# 目次
# ESP32について
ESP32の概要を知りたい場合は、
ESP32は上海に拠点を置く「Espressif Systems」社が開発するWi-FiとBluetoothを内蔵する 低コスト、低消費電力なマイクロコントローラです。
に概要(ESP32やArudinoと関係など)をまとめていますので、そちらをご一読頂ければと思います。
ここでは、実際にESP32の(ESP-WROOM-32)を用いたLチカまでを実施していきます。
# ESP32(ESP-WROOM-32)
今回は「ESP32シリーズDevKits」のうち、「ESP-WROOM-32」を利用します。 2016年から発売されているEspressif Systems社のヒット商品です。
32ビットMCUおよび2.4GHzで動作し、Wi-FiおよびBT / Bluetooth LEが利用できるため、 多くのIoTで利用されています。
ESP32の種類については、以下の記事でまとめていますので、興味があればご一読ください。
以下が「ESP-WROOM-32」のDevKitsです。失敗した場合やアクシデントも考慮して2個入りをAmazonで購入しました。
ESP32-WROOM-32チップモジュール内臓マイクロコントローラ2個 (opens new window)
# Arudino IDEのインストール
# インストーラの入手
以下の「Downloads」サイトよりインストーラを入手します。
「JUST DOWNLOAD」を押すとダウンロード可能です。
# インストーラを起動
ダウンロードしたインストーラをダブルクリックして起動します。
ライセンスの同意を求められるため、同意し「I Agree」を押します。
下記がデフォルトで設定されますが、問題ないためそのまま「NEXT」を押します。
- Arudino IDEのインストール
- USBドライバのインストール
- スタートメニューへの登録
- デスクトップにショートカットの作成
- .inoファイルを関連付ける
インストールが始まります。
# USBドライバのインストール
USBドライバのインストールを選んだ場合は、Arudino IEDのインストール中にドライバのインストールが始まります。 どちらもUSB接続して使う場合に必要となりますので、「INSTALL」を実施します。
# インストーラの完了
以上で、Arudino IDEのインストールが完了します。
起動時に、Javaを実行するための確認が表示されるので、「アクセスを許可する」を押します。
以上でArudino IDEのインストールは完了です。
# Arudino IDEの起動
インストールしたArudino IDEが起動できればOKです。
# Arudino IDE と ESP-WROOM-32を接続
手順はInstallation instructions using Arduino IDE Boards Manager (opens new window)に記載の通りです。 以下を実行することで、 Arudino IDEがESP32にプログラムを書きかむ為に必要な「プラットフォームパッケージ」を選択可能になります。
1.6.4以降、ArduinoではBoardsManagerを使用してサードパーティのプラットフォームパッケージをインストールできます。 Windows、Mac OS、およびLinux(x86、amd64、armhf、およびarm64)で使用できるパッケージがあります。 現在のアップストリームArduinoIDEを1.8レベル以降でインストールします。 現在のバージョンはArduinoのWebサイトにあります。
Arduinoを起動し、[設定]ウィンドウを開きます。 上記のリリースリンクの1つを[追加のボードマネージャーURL]フィールドに入力します。複数のURLをコンマで区切って追加できます。 [ツール]> [ボード]メニューからBoardsManagerを開き、esp32プラットフォームをインストールします(インストール後に[ツール]> [ボード]メニューからESP32ボードを選択することを忘れないでください)。
安定したリリースリンク:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json 開発リリースリンク:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
# 1. 環境設定を表示
# 2.追加のボードマネージャーURLを開く
# 3.追加のボードマネージャーURLを入力
以下のURLを入力します。
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
# 4.追加でOKを押します
# 5.[ツール]> [ボード]メニューからBoardsManagerを開きます
# 6.「ESP32」で検索し、「esp32 by Espressif Systems」をインストールします
インストールを押下します。
完了までには少し時間がかかります。
完了したら「閉じる」を押します。
# プログラムをESP-WROOM-32に書き込みLチカを実行
先程インストールしたESP32用の「プラットフォームパッケージ」をボードマネージャで選択し、 開発で使っているボードがESP32であることをArudino IDEに教えてあげます。
これでArduino IDEでESP32ボードにコードを書き込む事ができます。
# 「ツール」>「ボード」>「ESP32 Arudino」から「ESP32 Dev Module」を選択する
# コンパイルと書き込みを実行する
シリアルポートが選択されていません が表示された場合
Windows OSはPCにつながれているデバイスをCOMポートで管理しています。 Arudino IEDがどのCOMポートのデバイスと通信すれば良いか不明な場合にこのエラーが発生します。
まず、Windows OSがデバイスを正しく認識できているか確認します。 そのためにデバイスマネージャーを起動します。
”Silicon Labs CP210x USB to UART Bridge (COM5)”が表示されています。 このCOM5がCOMポート番号になります。
確認結果に合わせて「ツール」>「シリアルポート」>「COM5」を選択します。
# プログラムの書き込みが成功
プログラムの書き込みが成功すれば、以下のメッセージが表示されます。
Leaving...
Hard resetting via RTS pin ...
int portno=2; // デジタルポート番号
void setup() {
// put your setup code here, to run once:
pinMode(portno,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(portno,HIGH);
delay(500);
digitalWrite(portno,LOW);
delay(500);
}
実際に動かしたときのLEDの動作を動画です。
少しだけプログラムに修正を加えて、LEDの点滅リズムを変えてました。
int portno=2; // デジタルポート番号
void setup() {
// put your setup code here, to run once:
pinMode(portno,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(portno,HIGH);
delay(500);
digitalWrite(portno,LOW);
delay(500);
digitalWrite(portno,HIGH);
delay(200);
digitalWrite(portno,LOW);
delay(200);
}
# まとめ
いかがだったでしょうか。個人的にはとても気軽に始められたと思います。 ここまでは始めの第一歩ですが、ESP32はWiFi/Bluetoothがデフォルトで使えるので、 ここから創意工夫を重ねていけば、いろいろと出来そうですね。