Ameba Arduino: [RTL8195] SDIO – 列出SD Card里面的档案

材料准备

  • Ameba x 1
  • SD card or MicroSD card x 1
  • SD sniffer x 1 (optional)

范例说明

这个范例里会列出SD Card的根目录底下所有档案
我们打​​开范例 “File” -> “Examples” -> “AmebaSdFatFs” -> “list_root_files”
编译并上传至Ameba之后,按下Reset按钮之后,执行结果如下
1

可以发现 “0:/”的目录底下只有 test.txt这个档案。
可以发现到Ameba挂载的磁碟名称是从数字0开始。

程式码说明

一开始需要对SdFatFs做初始化

fs.begin();

接着呼叫 readDir(),将根目录底下所有档案列表以字串格式放在buffer里。第一个参数是要读取的目录的绝对路径,这里我们填根目录,第二个参数是buffer,第三个参数是buffer的大小

fs.readDir(fs.getRootPath(), buf, sizeof(buf));

buffer的资料格式如下,每个档案中间以 ‘\0’ 隔开,所以我们一一将结果读出来
2