SD 函式库
SD
函式库实作对 86Duino MicroSD 插槽的 MicroSD 卡读取和写入资料的功能。SD
函式库支援 SD 和 SDHC 的 MicroSD 卡。格式化 MicroSD 卡时可以选择 FAT16 或是 FAT32,这两种档案系统都被支援。SD
函式库也支援同时开启多个档案。指定档案路径时,可以使用 / 说明位于资料夹下的档案,例如:资料夹名称1/资料夹名称2/档案名称.txt。SD
函式库预设的初始资料夹位址是根目录(也就是 /),因此 /档案名称.txt 和 档案名称.txt 这两个路径是相同的。
在使用 MicroSD 卡前必须先格式化成 FAT16 或是 FAT32。在这篇文章裡有说明以 MicroSD 执行韧体系统的优点。另外,您如果希望制作一片没有可开机磁区的 MicroSD 卡,让 86Duino 在插着 MicroSD 卡的前提下还能从板上内建的 Flash 开机,可参考此篇教学。
SD 类别
SD
类别实作操作资料夹和档案的功能
- begin()
- exists()
- mkdir()
- open()
- remove()
- rmdir()
File 类别
File
类别实作读写 MicroSD 卡裡档案的功能
- available()
- close()
- flush()
- peek()
- position()
- print()
- println()
- seek()
- size()
- read()
- write()
- isDirectory()
- openNextFile()
- rewindDirectory()
范例
以下是 Arduino 使用 SD
函式库的范例,这些范例在 86Duino 上都可以正常运作(注:86Duino 上已经有 MicroSD 卡和网路线插槽,所以在实作下列范例的时候不需要 Ethernet shields 和 SD card shields):
- Datalogger:把类比脚位的资料纪录在 MicroSD 卡裡
- DumpFile:读取 MicroSD 卡裡的档案并且把读取的资料透过串列埠传输出去
- Files:建立和删除 MicroSD 裡的档案
- ReadWrite:对 MicroSD 卡裡的档案做读取和写入资料
Hack
在 86Duino 裡把 MicroSD 当作标准的硬碟处理并把磁碟机代号指定为 C:。因此要操控 MicroSD 裡的档案除了使用 SD
函式库也可以使用 C 语言提供来操控档案的函式,像是 fopen()
和 fread()
这类操控档案的函式。在指定档案的路径时,必须遵循 DOS pathDOS 路径的标准。
The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.