「Parts:DevBoard:ESP32-S3-DevKitC-1」の版間の差分

提供: robot-jp wiki
ナビゲーションに移動検索に移動
530行目: 530行目:
 
|}
 
|}
 
</blockquote>
 
</blockquote>
 +
[[file:ESP32-S3-DevKitC-pin.jpg]]
  
 
'''注意事項'''
 
'''注意事項'''
700行目: 701行目:
 
|}
 
|}
  
[[file:ESP32-S3-DevKitC-pin.jpg]]
+
 
 
</blockquote>
 
</blockquote>
  

2023年12月3日 (日) 21:51時点における版

メーカー Espressif Systems (Shanghai) Pte. Ltd.
商社 秋月電子通商
ボード名 ESP32-S3-DevKitC-1 (ArduinoIDE設定有)
CPU Espressif ESP32-S3-WROOM-1-E1N8 240MHz
FLASH 4MB 80MHz  ※DevKitCは40MHz&DIOで使うのがオススメ
SRAM 512kB
Schematic Diagram esp32-s3-wroom-1_wroom-1u_datasheet_en.pdf (Espressif p.27-29)
Dimensional drawing 列間ピッチ25.4mm
Document Specification:---
ESP32-S3-DevKitC Programing Guide (Espressif HP)

AMS1117-3.3 (Reg drop1V)

技適Certificate ESP32-S3-WROOM-1 Telec Certification
Datasheet Module
CPU ESP32-S3

ESP32-S3-DevKitC-1

販売店 日本 秋月電子通商 \2300 送料\600 (ESp32-S3-WROOM32-1-N8 : SRAM512kB Flash8MB)

Amazon ¥4280 送料\0

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

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

Pin Function

NodeMCU-32Cとピンコンパチ ※「初期電圧」欄は全ピン未接続の時の開放電圧実測値。

※GPIOポート番号の表記は資料により GPIO**/P**/D** 等のように記載が統一されていないため、ここではP**とした。

割込 専用

機能

ADC GPIO 初期

電圧

Name PU

/PD

pin ESP32-S3-DevKitC-body.jpg pin PU

/PD

Name 初期

電圧

GPIO ADC 専用

機能

JTAG SPI I2C 割込
3V3 1 44 GND
3V3 2 43 U0TXD 43
RST 3 42 U0RXD 44
1-3 4 4 41 1 1-0
1-4 5 5 40 2 1-1
1-5 6 6 39 42 MTMS
1-6 7 7 38 41 MTDI
2-4 15 U0RTS 8 37 40 MTDO
2-5 16 U0CTS 9 36 39 MTCK
2-6 17 U1TXD 10 35 RGB_LED 38
CLK_OUT 2-6 18 U1RXD 11 34 37 SPIDQS
1-7 8 12 33 36 SPIIO7
JTAG 1-2 3 13 32 35 SPIIO6
LOG 46 14 31 0 BOOT
1-8 9 15 30 45 VSPI
1-9 10 FSPIIO4 16 29 48 SPICLK_N
2-0 11 FSPIIO5 17 28 47 SPICLK_P
2-1 12 FSPIIO6 18 27 21
2-2 13 FSPIIO7 19 26 U1CTS 20 2-9 USB_D+
2-3 14 FSPIDQS 20 25 U1RTS 19 2-8 USB_D-
5V0 21 24 GND
GND 22 23 GND

ESP32-S3-DevKitC-pin.jpg

注意事項

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

起動に関する機能が決まっている端子
Pin No. 名称 特殊機能 やるべきこと
13 IO12/MTDI 起動時にLow (SPI-Flashの制約) Pull Down
23 IO15/MTDO 起動時にHighでboot中にError Log出力 Pull Down
24 IO2 起動時にLowでDownload ※PullUpするとDownload不可になる Open
25 IO0 起動時にLowでDownload、Highで通常boot Pull Up
29 IO5 DebugLogモード選択(通信のUp/Down Edge切り替え) 考慮しない
各機能で端子が決まっている端子
機能 Pin No. GPIO 名称 特殊機能 やるべきこと
Reset 2 -- EN /Reset 基本的にはOpen。

ResetするとUART0にメッセージが出力される。

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)

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

Flashの全消去

パーテーションを変更する時はFlashを全消去します。

ubuntu

ESP-IDFをインストールして、esptool.pyが使えるようにします。

ArduinoIDE等のシリアルポートを使っているプログラムを全て終了させます。</ BR> USBポートが"/dev/ttyUSB0"の場合です。

> cd ~/git/arduino-esp32/tools/
> ./esptool.py --chip esp32 --p /dev/ttyUSB0 --baud 921600 erase_flash

起動モード

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でも発熱量は大差ない。安定性も大差ない。消費電流はちょっとだけ違う。だったら240MHzを選ぶ。
  • FreeRTOSのxTaskCreateを使うとRebootしやすい。何か工夫が必要なのだろう。
  • xTaskCreateの代わりにLVGL8.3.3のlv_timerが使える。ただし timer ch1〜3辺りを使われてしまうので対応する必要がある。16chあるから大丈夫。

戻る