369_Arduino SD卡文件系统库基本信息小结

         学习一个软件功能的最好途径就是先整体后局部,说整体我主要是指先看到它的功能以及文档概要,局部则是细致的功能甚至是基础实现。

         Arduino SD卡文件系统的简单写入功能已经测试过了,接下来梳理一下相关的文档信息。

369_Arduino SD卡文件系统库基本信息小结

         这里的几个知识点:

  1. 这个库支持SD卡的读写,很多板盾,例如以太网的板盾可以支持;
  2. 这个文件系统支持FAT16和FAT32的文件系统;
  3. SD卡以及SDHC卡都是支持的,之前了解过后面的卡,主要是指大容量卡;
  4. 支持带目录的文件操作;
  5. 通信方式是SPI,片选可以采用硬件或者软件模式。但是,即使是使用了软件模式硬件片选口也得是一个输出模式,否则这个库不工作。(这很有意思,既然这样,为何不适用硬件片选呢?)

 

文件系统的操作被分为了两个层级类别,分别是SD卡级别和文件级别。相应的操作如下:

369_Arduino SD卡文件系统库基本信息小结

         为什么目录、文件创建等都是SD卡级别呢?按照我自己的理解,如果系统中有多个SD卡的华,这个是有相关度的。因此,是SD卡级别。其他的操作,应该不会涉及到这个概念。

369_Arduino SD卡文件系统库基本信息小结

         上面这些,是文件级别的操作。看上去,我之前考虑到的创建、删除、覆盖、追加、判断存在性等都是已经实现了的。

         几个官方的例子:

369_Arduino SD卡文件系统库基本信息小结

         这几个例子都可以看看,对于获取卡信息等功能可以从底层的角度去研究一下。这个库是C++实现的,但是我自己工作中的应用基本都是C,通过这些例子的研究也可以去看看是否有C语言话的可能。