sdcardio
– 通过 SPI 总线连接到 SD 卡¶
在这些板上可用
-
class
sdcardio.
SDCard
(bus: busio.SPI, cs: microcontroller.Pin, baudrate: int = 8000000)¶ SD卡块接口
通过 SPI 控制 SD 卡。这个内置模块比库 adafruit_sdcard 具有更高的读取性能,但它只兼容
busio.SPI
,不兼容bitbangio.SPI
. 通常使用 SDCard 对象storage.VfsFat
来允许文件 I/O 到 SD 卡。使用给定的属性构造一个 SPI SD 卡对象
- 参数
spi (busio.SPI) – SPI 总线
cs (microcontroller.Pin) – 连接到卡的芯片选择
baudrate (int) – 卡设置后使用的 SPI 数据速率
请注意,在检测和配置期间,使用了硬编码的低波特率。数据传输使用指定的 baurate(四舍五入为微控制器支持的一个)
重要的
如果同一个 SPI 总线与其他外设共享,则在访问总线上的任何其他外设之前初始化 SD 卡很重要。否则会导致 SD 卡无法被识别,直到它断电或重新插入。
用法示例:
import os import board import sdcardio import storage sd = sdcardio.SDCard(board.SPI(), board.SD_CS) vfs = storage.VfsFat(sd) storage.mount(vfs, '/sd') os.listdir('/sd')
-
readblocks
(self, start_block: int, buf: _typing.WriteableBuffer) → None¶ 从卡中读取一个或多个块
- 参数
start_block (int) – 开始读取的块
buf (WriteableBuffer) –要写入的缓冲区。长度必须是 512 的倍数。
- 返回
没有任何
-
writeblocks
(self, start_block: int, buf: _typing.ReadableBuffer) → None¶ 将一个或多个块写入卡中
- 参数
start_block (int) – 开始写入的块
buf (ReadableBuffer) – 要从中读取的缓冲区。长度必须是 512 的倍数。
- 返回
没有任何