阅 7376|回 0
- 最后登录
- 2024-12-27
- 在线时间
- 4872 小时
- 威望
- 13542分
- 芯积分
- 4035分(兑换)
- E金币
- 1609枚(兑换)(兑换)
- 好友
- 60
版主
|
和大部分ESP32开发板不同,我们这次ESP32学习活动的ESP32开发板上,带有microSD(又叫TF)卡座。一般情况下,SD卡可以通过SPI或者SDIO方式使用,而SDIO还分为1线和4线两种方式。
SD Card connection to ESP32ESP32 pin | SD name | SD pin | μSD pin | SPI pin | Notes | GPIO14 (MTMS) | CLK | 5 | 5 | SCK | 10k pullup in SD mode | GPIO15 (MTDO) | CMD / DI | 2 | 3 | MOSI | 10k pullup, both in SD and SPI modes | GPIO2 | DAT0 / DO | 7 | 7 | MISO | 10k pullup in SD mode
(Note) | GPIO4 | DAT1 | 8 | 8 | N/C | not used in 1-line SD mode;
10k pullup in 4-line SD mode | GPIO12 (MTDI) | DAT2 | 9 | 1 | N/C | not used in 1-line SD mode;
10k pullup in 4-line SD mode (Note) | GPIO13 (MTCK) | DAT3 | 1 | 2 | CS | not used in 1-line SD mode,
card's DAT3 pin must have a 10k pullup | N/C | CD | | | | Card Detect, optional, not used by driver | N/C | WP | | | | Write Protect, optional, not used by driver | VDD (3.3V) | VDD | 4 | 4 | | | GND | GND
VSS
VSS1,VSS2 | 3&6 | 6 | | |
SD card pinout / μSD card pinout (Contacts view):
我们的ESP32开发板上,可以通过SDIO方式使用TF卡,不过因为4线模式下,需要在CLK、CMD、DAT0-3等引脚上连接10K的上拉电阻,而板子上默认没有焊接(但留出了0402的元件位置)。
为了在ESP32上使用TF卡,我们需要使用Lobo版的MicroPython(请见【ESP32学习】ESP32 Lobo 版固件),官方的版本还不支持这个功能。更新固件后,我们就可以按照下面方式使用了:
- import os
- os.sdconfig(os.SDMODE_1LINE)
- os.mountsd()
复制代码
如果没有问题,就会显示类似下面信息:
- ---------------------
- Mode: SD (1bit)
- Name: 0000
- Type: SDHC/SDXC
- Speed: high speed (50 MHz)
- Size: 30472 MB
- CSD: ver=1, sector_size=512, capacity=62406656 read_bl_len=9
- SCR: sd_spec=2, bus_width=5
复制代码
这时我们就可以像内部文件系统那样使用SD了,SD的默认目录是'/sd',注意目录是区分大小写的。
如果一直挂载不了,就需要想办法焊接10K的上拉电阻了。
此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处
|
|