本帖最后由 jinglixixi 于 2021-9-8 18:44 编辑
对于FireBeetle这款小巧的开发板,它是支持SD卡来扩充存储能力的,并配有相应的文件系统来辅助应用。 在Arduino IDE的开发环境中是配有相关例程供使用者学习和使用的,本人选取的SD_Test这个程序,见图1所示,它可以设备多种SD卡的类型,如MMC、SDSC和SDHC。
图1 程序及上传 那么该例程又有什么作用呢? 通过图2和图3的运行结果可知,它可以检测SD卡的类型、容量及剩余空间等,此外还可以进行文件的读写测试以及文件的创建、更名、删除和列表显示等。
图2 运行结果1
图3 运行结果2 经核对所列出的文件列表与图4所示的SD卡内容是一致的,所读取的文件内容也图5所示的相一致,说明程序的功能正常。
图4 SD卡的内容
图5文件内容 这样说SD卡的读写测试是轻而易举的事情呢? 其实也不尽然,因为要进行SD卡的读写测试就必须连接好SD卡,为此我们可以借助SD卡模块来解决,其连接效果如图6所示。 为确保测试的正常,所选取的SD卡容量为4G卡,因为有些系统对大容量的SD卡是不支持的。
图6 SD卡连接与测试 那具体的引脚连接连接关系又是这样的呢? 从程序的注释中可见到如下的提示信息: /* *Connect the SD card to the following pins: * * SDCard | ESP32 * D2 - * D3 SS (GND) * CMD MOSI * VSS GND * VDD 3.3V * CLK SCK * VSS GND * D0 MISO * D1 - */ 但在SD卡上却没有D0~_D3及CMD这些引脚,为此只好按ESP32的引脚名称来进行连接。 但随后问题又出现了,在开发板上是不存在SS这个引脚的,且这个引脚又很关键,没有它就无法进行测试。经分析,SS引脚多为低电平使能之用,故可以人为地将SS引脚连接到GND来解决,于是就有了前面的测试结果。 有了SD卡的读写功能,后面再出现存储容量有限的问题就好解决了。此外,我们还可以为开发板配上TFT屏来显示图片,用SD卡来存储图片以实现数码相框的制作。
|