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

提供: robot-jp wiki
ナビゲーションに移動検索に移動
230行目: 230行目:
 
|-  
 
|-  
 
|
 
|
|
+
|XTAL_32K_P
 
|2-4
 
|2-4
 
|15
 
|15
250行目: 250行目:
 
|-  
 
|-  
 
|  
 
|  
|  
+
| XTAL_32K_N
 
|2-5
 
|2-5
 
|16
 
|16
290行目: 290行目:
 
|-  
 
|-  
 
|
 
|
| CLK_OUT
+
| CLK_OUT3
 
|2-6
 
|2-6
 
|18
 
|18
542行目: 542行目:
 
!やるべきこと
 
!やるべきこと
 
|-
 
|-
!13
+
!
|IO12/MTDI
+
|GPIO3
|起動時にLow [https://akizukidenshi.com/download/ds/espressifsystems/esp32-wroom-32d_esp32-wroom-32u_datasheet_en.pdf (SPI-Flashの制約)]
+
|
|'''Pull Down'''
+
|
 +
|-
 +
!
 +
|GPIO0
 +
|0:JointDownloadBoot
 +
1:SPI Boot (Default)
 +
|'''Pull Up'''
 
|-
 
|-
!23
+
!
|IO15/MTDO
+
|GPIO46
|起動時にHighでboot中にError Log出力
+
|0:JointDownloadBoot
 
|'''Pull Down'''
 
|'''Pull Down'''
 
|-
 
|-
!24
+
!
|IO2
+
|gpio45
|起動時にLowでDownload ※PullUpするとDownload不可になる
+
|0:Flash 3.3V
|'''Open'''
+
1:Flash 1.8V
|-
 
!25
 
|IO0
 
|起動時にLowでDownload、Highで通常boot
 
 
|'''Pull Up'''
 
|'''Pull Up'''
|-
 
!29
 
|IO5
 
|DebugLogモード選択(通信のUp/Down Edge切り替え)
 
|考慮しない
 
 
|}
 
|}
 
</blockquote>
 
</blockquote>
578行目: 575行目:
 
!特殊機能
 
!特殊機能
 
!やるべきこと
 
!やるべきこと
|-
 
!Reset
 
!2
 
!--
 
|EN
 
|/Reset
 
|基本的にはOpen。
 
ResetするとUART0にメッセージが出力される。
 
 
|-
 
|-
 
! rowspan="2" |UART0
 
! rowspan="2" |UART0
!34
+
!
!P3
+
!
 
|RXD0
 
|RXD0
 
|USB通信用
 
|USB通信用
| rowspan="2" |N.C.
+
| rowspan="2" |DefaultではUSBとUART0が同等に扱われる。
 +
設定すればバラバラにできるかも??
 
|-
 
|-
!35
+
!
!P1
+
!
 
|TXD0
 
|TXD0
 
|USB通信用
 
|USB通信用
 
|-
 
|-
 
! rowspan="6" |内部Flash
 
! rowspan="6" |内部Flash
!20
+
!
!P6
+
!
 
|SPI-SCK/CLK
 
|SPI-SCK/CLK
 
| rowspan="6" |SPI-Flash
 
| rowspan="6" |SPI-Flash
607行目: 597行目:
  
  
'''<small>manual p.9より</small>'''
+
'''<small>manual p.26</small>'''
  
<small>'''Note:''' * Pins SCK/CLK, SDO/SD0, SDI/SD1, SHD/SD2, SWP/SD3 and SCS/CMD,</small>
+
<small>It is not recommended to use the pins connected to flash/PSRAM for any other purposes.</small>
 
 
<small>namely, GPIO6 to GPIO11 are connected to the integrated SPI flash integrated</small>
 
 
 
<small>on ESP32-WROOM-32D and are '''not recommended for other uses.'''</small>
 
|-
 
!21
 
!P7
 
|SPI-SD0/SDO
 
|-
 
!22
 
!P8
 
|SPI-SD1/SDI
 
|-
 
!16
 
!P9
 
|SPI-SD2/HD
 
|-
 
!17
 
!P10
 
|SPI-SD3/UP
 
|-
 
!18
 
!P11
 
|SPI-CMD
 
|-
 
! rowspan="2" |I2C
 
!33
 
!P21
 
|SDA (IO21)
 
|Data I/O
 
| rowspan="2" |I2Cを使う時はPull-Up
 
※最高速で通信するなら10kΩ×2p程度、ゆっくり通信で良ければCPU内蔵PullUpを使う
 
|-
 
!36
 
!P22
 
|SCL (IO22)
 
|CLK Out
 
|-
 
!SPI
 
!37
 
!P23
 
|SPI_MOSI (IO23)
 
|Data Master→Slave
 
| rowspan="3" |SPIを使う時には専用にする
 
|-
 
!SPI
 
!31
 
!P19
 
|SPI_MISO (IO19)
 
|Data Master←Slave
 
|-
 
!SPI
 
!30
 
!P18
 
|SPI_SCK  (IO18)
 
|CLK Out
 
|-
 
! rowspan="6" |HSPI
 
!12
 
!P14
 
|HSPI CLK
 
|CLK
 
| rowspan="6" |SDカードとの高速通信用のため、高速通信を使わない場合には考慮しない。
 
※高速通信するにはSD Associationへの入会が必要
 
 
|-
 
|-
!23
+
!
!P15
+
!
|HSPI CS0
+
|SPI-CS0/CS#
|CMD
 
 
|-
 
|-
!24
+
!
!P2
+
!
|HSPI WP
+
|SPID
|DATA0
 
|-
 
!26
 
!P4
 
|HSPI HD
 
|DATA1
 
 
|-
 
|-
!13
+
!
!P12
+
!
|HSPI Q
+
|SPIQ
|DATA2
 
 
|-
 
|-
!15
+
!
!P13
+
!
|HSPI D
+
|SPIWP
|DATA3
 
|}
 
 
 
 
 
</blockquote>
 
 
 
== 構造の概要 ==
 
<blockquote>
 
ボードに載っているESP32自体が小さい開発ボードのようになっています。<BR />
 
ESP32にはFreeRTOSがプリインストールされており、その上でUser Programが動きます。<BR />
 
{|
 
|Hardware<BR />
 
[[file:ESP32-DEVKITC-32D inside.jpg|600px]]
 
 
|-
 
|-
|Software
+
!
:freeRTOS with LwIP; TLS 1.2 with hardware acceleration
+
!
::Booter
+
|SPIHD
::User Program
 
 
|}
 
|}
</blockquote>
 
 
== 基本的な使い方 ==
 
<blockquote>
 
VSCodeでプログラムを作る場合でも、ArduinoIDEの機能を使うため、両方をインストールします。
 
  
Arduino IDEしか使わない場合にはVSCodeをインストールする必要はありません。
 
  
=== Arduino IDE ===
 
<blockquote>
 
・[[App:IDE:Arduino IDE|インストール~基本的な使い方]]
 
</blockquote>
 
  
=== Visual Studio Code (VSCode) ===
+
</blockquote>-------------------------------------ここから下は書きかけ -------------------------------------
<blockquote>
 
・[[App:IDE:Visual Studio Code|インストール~基本的な使い方]]
 
</blockquote>
 
</blockquote>
 
  
 
== Flashの全消去 ==
 
== Flashの全消去 ==
834行目: 724行目:
 
== 使ってみた結果 ==
 
== 使ってみた結果 ==
  
* Flashとの通信部分がギリギリの設計になっているようで、80MHzだと電源の立ち上がり時間次第でRebootするので、40MHzが無難。
+
*<br />
* 240MHzでも80MHzでも発熱量は大差ない。安定性も大差ない。消費電流はちょっとだけ違う。だったら240MHzを選ぶ。
 
* FreeRTOSのxTaskCreateを使うとRebootしやすい。何か工夫が必要なのだろう。
 
* xTaskCreateの代わりにLVGL8.3.3のlv_timerが使える。ただし timer ch1〜3辺りを使われてしまうので対応する必要がある。16chあるから大丈夫。<br />
 
 
----[https://robot-jp.com/wiki/index.php 戻る]
 
----[https://robot-jp.com/wiki/index.php 戻る]

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

メーカー 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
XTAL_32K_P 2-4 15 U0RTS 8 37 40 MTDO
XTAL_32K_N 2-5 16 U0CTS 9 36 39 MTCK
2-6 17 U1TXD 10 35 RGB_LED 38
CLK_OUT3 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. 名称 特殊機能 やるべきこと
GPIO3
GPIO0 0:JointDownloadBoot

1:SPI Boot (Default)

Pull Up
GPIO46 0:JointDownloadBoot Pull Down
gpio45 0:Flash 3.3V

1:Flash 1.8V

Pull Up
各機能で端子が決まっている端子
機能 Pin No. GPIO 名称 特殊機能 やるべきこと
UART0 RXD0 USB通信用 DefaultではUSBとUART0が同等に扱われる。

設定すればバラバラにできるかも??

TXD0 USB通信用
内部Flash SPI-SCK/CLK SPI-Flash 使用禁止


manual p.26

It is not recommended to use the pins connected to flash/PSRAM for any other purposes.

SPI-CS0/CS#
SPID
SPIQ
SPIWP
SPIHD


-------------------------------------ここから下は書きかけ -------------------------------------

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

使ってみた結果



戻る