Atomic TFCard Base
这是 Atomic TFCard Base 的驱动程序库,用于挂载TF卡。
支持以下产品:
UIFLOW2 应用示例:
TFCard 挂载
在UiFlow2 中打开 atoms3r_tfcard_example.m5f2 项目。
本示例演示如何使用 Atomic TFCard Base 读取/创建目录。
UiFlow2 代码块:
示例输出:
/sd 目录下的文件。
MicroPython 应用示例:
TFCard 挂载
本示例演示如何使用 Atomic TFCard Base 读取/创建目录。
MicroPython 代码块:
1# SPDX-FileCopyrightText: 2025 M5Stack Technology CO LTD 2# 3# SPDX-License-Identifier: MIT 4 5import os, sys, io 6import M5 7from M5 import * 8from base import AtomicTFCardBase 9import time 10 11 12title0 = None 13base_tfcard = None 14 15 16def setup(): 17 global title0, base_tfcard 18 19 M5.begin() 20 title0 = Widgets.Title("TFCard e.g.", 3, 0xFFFFFF, 0x0000FF, Widgets.FONTS.DejaVu18) 21 22 base_tfcard = AtomicTFCardBase(slot=3, width=1, sck=7, miso=8, mosi=6, freq=1000000) 23 os.chdir("/sd") 24 print((str("Current dir:") + str((os.getcwd())))) 25 print((str("list /sd/dir: ") + str((os.listdir("/sd/"))))) 26 if not ("sdcard_test" in os.listdir("/sd/")): # noqa: E713 27 print("Try create 'sdcard_test' directory in /sd/") 28 os.mkdir("/sd/sdcard_test") 29 print((str("'sdcard_test' is directory?:") + str((os.stat("/sd/sdcard_test")[0] == 0x4000)))) 30 print((str("'sdcard_test' is file?:") + str((os.stat("/sd/sdcard_test")[0] == 0x8000)))) 31 print("Delay 1s to delete 'sdcard_test' directory") 32 time.sleep(1) 33 os.rmdir("/sd/sdcard_test") 34 if not ("sdcard_test" in os.listdir("/sd/")): # noqa: E713 35 print("Directory 'sdcard_test' deleted successfully") 36 37 38def loop(): 39 global title0, base_tfcard 40 M5.update() 41 42 43if __name__ == "__main__": 44 try: 45 setup() 46 while True: 47 loop() 48 except (Exception, KeyboardInterrupt) as e: 49 try: 50 from utility import print_error_msg 51 52 print_error_msg(e) 53 except ImportError: 54 print("please update to latest firmware")
示例输出:
/sd 目录下的文件。
API参考
function AtomicTFCardBase
- AtomicTFCardBase(slot=1, width=1, cd=None, wp=None, sck=None, miso=None, mosi=None, cs=None, freq=20000000)
该函数仅用于初始化并挂载 SD 卡到 /sd 目录下,同时在挂载前尝试卸载已有的 SD 卡。其他文件操作(如读写文件、创建目录等)需要通过 os 模块来实现。
- 参数:
slot (int) – 使用哪个可用接口。默认值为 1。
width (int) – SD/MMC 接口的总线宽度。默认值为 1。
cd (int) – 要使用的卡检测引脚。默认值为 None。
wp (int) – 要使用的写保护引脚。默认值为 None。
sck (int) – 要使用的 SPI 时钟引脚。默认值为 None。
miso (int) – 要使用的 SPI miso 引脚。默认值为 None。
mosi (int) – 要使用的 SPI mosi 引脚。默认值为 None。
cs (int) – 要使用的 SPI 芯片选择引脚。默认值为 None。
freq (int) – SD/MMC 接口频率(单位:Hz)。默认值为 20000000。
- 返回:
None
UiFlow2 代码块:

MicroPython 代码块:
from base import AtomicTFCardBase base_tfcard = AtomicTFCardBase(slot=3, width=1, sck=7, miso=8, mosi=6, freq=20000000)
详情请参见
os– 基本操作系统服务。


