电子说
将Arduino连接到适配器
这些适配器板通常使用串行外设接口(SPI)与微控制器通信。因此,它将占用Arduino上的三个GPIO引脚。此外,您还需要连接芯片选择线以启用SD卡和电源适配器供电线。
将Arduino连接到SD卡适配器的示意图。
绿色(MISO)和黄色(MOSI)线连接到Arduino的引脚12和11。时钟(蓝色)需要连接到引脚13.如果您不确定需要在Arduino上使用哪些引脚,请参阅Arduino文档。
短测试程序
进行必要的连接后,就可以连接SD卡了。简短的测试草图列出了卡上的文件。代码可以在本文末尾的zip文件中找到 sd_info 。
如您所见,大多数代码处理控制台输出。只需几行即可连接到设备并初始化文件系统以读取和写入文件。但是,此示例仅打印卡的一些基本属性,如大小,类型和已保存的文件。
SD_info示例。
写入SD卡上的文件
现在我们知道卡和模块都在运行,是时候将一些值写入文件了。示例 SD_write (在本文末尾找到)将两行写入存储在SD卡上的日志文件中。
代码的初始化部分几乎是与第一个程序相同。但是,不是打开音量,而是必须初始化SD卡本身。初始化后,必须打开文件。
打开文件进行写入时,如果文件尚不存在,则会自动创建该文件。光标始终位于文件的末尾。因此,如果您在打开文件时没有移动它,只需将新文本附加到其中即可。由于内容存储在SD卡上,您只需使用计算机读取文件内容即可。
SD_write程序示例。
从存储在SD卡上的文件中读取
您也可以使用SD卡读取文件。但是,与标准C函数相比,可用的方法非常有限。我发现SD卡经常在查找文件夹中的文件时遇到问题。以下示例(在zip文件中的 SD_read 下)说明了如何从包含传感器读数的文件中读取值。
此示例与写入示例之间唯一真正的区别在于文件按字节方式读取。因此,您必须从文件中读取字节数。结果应如下所示:
全部0条评论
快来发表一下你的评论吧 !