Parts:DevBoard:ESP32-DevKitC-32D

提供: robot-jp wiki
2022年9月26日 (月) 11:54時点におけるTakashi (トーク | 投稿記録)による版 (→‎構造の概要)
ナビゲーションに移動検索に移動
メーカー Espressif Systems (Shanghai) Pte. Ltd.
商社 秋月電子通商
ボード名 ESP32-DevKitC-32D (ArduinoIDE設定有)
CPU Espressif ESP32-WROOM-32D 240MHz
FLASH 4MB 80MHz
SRAM 512kB
Schematic Diagram esp32_devkitc_v4-sch.pdf (Espressif)
Dimensional drawing 列間ピッチ25.4mm
Document Specification:---
ESP32-DevKitC V4 Getting Started Guide (Espressif HP)
技適Certificate ESP32-WROOM-32D MIC Certification
Datasheet Module
CPU ESP32-WROOM-32

Espressif

秋月電子

販売店 日本 秋月電子通商 \1480 送料\600

Amazon ¥1280 送料\0

USA Digikey \1236 合計6000円以上で送料\0。合計10000円未満は消費税なし。
中国 Espressif

2022/3/11時点で、秋月では新規採用OK、Digikeyでは新規採用NG。

Pin Function

NodeMCU-32Cとピンコンパチ

割込 DAC HSPI 専用 ADC GPIO I/O Name pin ESP32-DevKitC-32D.jpg pin Name I/O GPIO ADC 専用 HSPI SPI I2C 割込
+3.3V out +3.3V 1 38 GND GND
EN(/Reset) EN 2 37 IO23 P23 VSPID MOSI
(入力専用) A1-0 P36 SENSOR_VP 3 36 IO22 P22 VSPIWP/U0RTS SCL
(入力専用) A1-3 P39 SENSOR_VN 4 35 TXD0 ×/× P1 U0TXD
(入力専用) A1-6 P34 IO34 5 34 RXD0 ×/× P3 U0RXD
(入力専用) A1-7 P35 IO35 6 33 IO21 P21 VSPIHD SDA
T9 XTAL_32K_P A1-4 P32 -/〇 IO32 7 32 GND GND
T8 XTAL_32K_N A1-5 P33 -/〇 IO33 8 31 IO19 P19 VSPI Q/U0CTS MISO
DA1 A2-8 P25 -/〇 IO25 9 30 IO18 P18 VSPI CLK SCK
DA2 A2-9 P26 -/〇 IO26 10 29 IO5 -/〇 P5 VSPI CS0
T7 A2-7 P27 IO27 11 28 IO17 -/〇 P17 U2TXD
T6 CLK HSPI CLK A2-6 P14 IO14 12 27 IO16 -/× P16 U2RXD
T5 DATA2 HSPI Q/MTDI A2-5 P12 -/〇 IO12 13 26 IO4 -/〇 P4 A2-0 HSPI HD DATA1 T0
GND GND 14 25 IO0 -/〇 P0 A2-1 Boot T1
T4 DATA3 HSPI D A2-4 P13 -/〇 IO13 15 24 IO2 P2 A2-2 HSPI WP DATA0 T2
SPI HD/U1RXD P9 ×(Flash) SD2 16 23 IO15 P15 A2-3 HSPI CS0 CMD T3
SPI WP/U1TXD P10 ×(Flash) SD3 17 22 SDI/SD1 ×(Flash) P8 SPI D/U2CTS
SPI CS0/U1RTS P11 ×(Flash) CMD 18 21 SDO/SD0 ×(Flash) P7 SPI Q/U2RTS
5~?V in/4.7V out +5V 19 20 CLK ×(Flash) P6 SPI CLK/U1CTS

注意事項

下記端子は使用方法が決まっているため特に考慮する。

起動に関する機能が決まっている端子
Pin No. 名称 特殊機能 やるべきこと
13 IO12/MTDI 起動時にLow (SPI-Flashの制約) PullDown
23 IO15/MTDO 起動時にHighでboot中にError Log出力 考慮しない
24 IO2 起動時にLowでDownload PullUp
25 IO0 起動時にLowでDownload、Highで通常boot PullUp
29 IO5 DebugLogモード選択(通信のUp/Down Edge切り替え) 考慮しない
各機能で端子が決まっている端子
機能 Pin No. GPIO 名称 特殊機能 やるべきこと
Reset 2 -- EN /Reset Open,又はReset-ICを付ける
UART0 34 P3 RXD0 USB通信用 N.C.
35 P1 TXD0 USB通信用
内部Flash 20 P6 SPI-SCK/CLK SPI-Flash 使用禁止


manual p.9より

Note: * Pins SCK/CLK, SDO/SD0, SDI/SD1, SHD/SD2, SWP/SD3 and SCS/CMD,

namely, GPIO6 to GPIO11 are connected to the integrated SPI flash integrated

on ESP32-WROOM-32D and are not recommended for other uses.

21 P7 SPI-SD0/SDO
22 P8 SPI-SD1/SDI
16 P9 SPI-SD2/HD
17 P10 SPI-SD3/UP
18 P11 SPI-CMD
I2C 33 P21 SDA (IO21) Data I/O I2Cを使う時はPull-Up

※最高速で通信するなら10kΩ×2p程度、ゆっくり通信で良ければCPU内蔵PullUpを使う

36 P22 SCL (IO22) CLK Out
SPI 37 P23 SPI_MOSI (IO23) Data Master→Slave SPIを使う時には専用にする
SPI 31 P19 SPI_MISO (IO19) Data Master←Slave
SPI 30 P18 SPI_SCK (IO18) CLK Out
HSPI 12 P14 HSPI CLK CLK SDカードとの高速通信用のため、高速通信を使わない場合には考慮しない。

※高速通信するにはSD Associationへの入会が必要

23 P15 HSPI CS0 CMD
24 P2 HSPI WP DATA0
26 P4 HSPI HD DATA1
13 P12 HSPI Q DATA2
15 P13 HSPI D DATA3


構造の概要

ボードに載っているESP32自体が小さい開発ボードのようになっています。
ESP32にはFreeRTOSがプリインストールされており、その上でUser Programが動きます。

Hardware

ESP32-DEVKITC-32D inside.jpg

Software
freeRTOS with LwIP; TLS 1.2 with hardware acceleration
Booter
User Program

基本的な使い方

VSCodeでプログラムを作る場合でも、ArduinoIDEの機能を使うため、両方をインストールします。

Arduino IDEしか使わない場合にはVSCodeをインストールする必要はありません。

Arduino IDE

インストール~基本的な使い方

Visual Studio Code (VSCode)

インストール~基本的な使い方

起動モード

Table4: Strapping Pins

IO 0/2/5/12/13/15

内部電圧 : Voltage of Internal LDO (VDD_SDIO)
Pin Default 3.3V 1.8V
MTDI(GPIO12) Pull-down 0 1
起動モード : Booting Mode
Pin Default 実行 : SPI Boot 書込 : Download Boot
GPIO0 Pull-up 1 0
GPIO2 Pull-down Don’t-care 0
Enabling/Disabling Debugging Log Print over U0TXD During Booting
Pin Default U0TXD Toggling U0TXD Silent
MTDO(GPIO15) Pull-up 1 0
Enabling/Disabling Debugging Log Print over U0TXD During Booting
Pin Default Falling-edge Input

Falling-edge Output

Falling-edge Input

Rising-edge Output

Rising-edge Input

Falling-edge Output

Rising-edge Input

Rising-edge Output

MTDO(GPIO15) Pull-up 0 0 1 1
GPIO5 Pull-up 0 1 0 1

使ってみた結果

  • Flashとの通信部分がギリギリの設計になっているようで、80MHzだと電源の立ち上がり時間次第でRebootするので、40MHzが無難。
  • 240MHzで動かすと以外と発熱します。80MHzまで落とせる。

戻る