




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本次实验使用 arduino 驱动 SD 卡 在 SD 卡中进行文件读写 需要说明的是 arduino 的 SD 库文件 目前对 2G 以上的卡支持不是很 好 所以推荐大家使用 2G 包含 2G 以下的 文件格式使用 FAT 格式 这次我是用的是 kingmax2G 的 MicroSD 卡 先看一下硬件连接图 把下面代码下载进 arduino 控制板 此例子展示如果记录三个模拟引脚数值到 SD 卡 使用 SD 库 电路部分 模拟引脚使用模拟口 0 1 2 大家可以根据情况接入模拟传感器 如果没有 也可以完成此实验 只不过数值是不停跳动的干扰源 SD 卡与 arduino 控制板使用 SPI 总线连接 MOSI pin 11 MISO pin 12 CLK pin 13 CS pin 4 include CS 引脚为 pin4 这里也沿用官方默认设置 const int chipSelect 4 设定 CS 接口 void setup Serial begin 9600 设置串口通信波特率为 9600 Serial print Initializing SD card 串口输出数据 Initializing SD card pinMode 10 OUTPUT if SD begin chipSelect 如果从 CS 口与 SD 卡通信失败 串口输出信息 Card failed or not present Serial println Card failed or not present return Serial println card initialized 与 SD 卡通信成功 串口输出信息 card initialized void loop 定义数组 String dataString 读取三个传感器值 写入数组 for int analogPin 0 analogPin 3 analogPin int sensor analogRead analogPin dataString String sensor if analogPin 2 dataString 打开文件 注意在同一时间只能有一个文件被打开 如果你要打开另一个文件 就需要先关闭前一个 File dataFile SD open datalog txt FILE WRITE 打开 datalog txt 文件 读写状态 位置在文件末尾 if dataFile dataFile println dataString dataFile close 数组 dataString 输出到串口 Serial println dataString 如果无法打开文件 串口输出错误信息 error opening datalog txt else Serial println error opening datalog txt 复制代码 下载完成后 打开串口监视器 控制板开始工作后会看到如下画面 图中每一行上就是每次记录的三 个传感器数值 本次实验并没有接传感器 所以数值是周围干扰源的 杂乱信号 关闭 arduino 电源后把 SD 卡取出 接入电脑后 可以看到 SD 卡中有 一个 DATALOG TXT 文件 打开后有可以看到 此文件中的信息就是 记录下的各个传感器的数值 第一个代码实验完以后 SD 卡中的 DATALOG TXT 不要删除 把下面 代码下载进 arduino 中 打开串口监视器 看看效果 这个例子展示如何通过 SD 库从 SD 卡中读取一个文件 并且把数据通过串口发送 SD 卡与 arduino 控制板使用 SPI 总线连接 MOSI pin 11 MISO pin 12 CLK pin 13 CS pin 4 include CS 引脚为 pin4 这里也沿用官方默认设置 const int chipSelect 4 设定 CS 接口 void setup Serial begin 9600 设置串口通信波特率为 9600 Serial print Initializing SD card 串口输出数据 Initializing SD card pinMode 10 OUTPUT if SD begin chipSelect 如果从 CS 口与 SD 卡通信失败 串口输出信息 Card failed or not present Serial println Card failed or not present don t do anything more return Serial println card initialized 与 SD 卡通信成功 串口输出信息 card initialized File dataFile SD open datalog txt 打开 datalog txt 文件 if dataFile while dataFile available 检查是否 dataFile 是否有数据 Serial write dataFile read 如果有数据则把数据发送到串口 dataFile close 关闭 dataFile else Serial println error opening datalog txt 如果文件无法打开串口发送 信息 error opening datalog txt void loop 复制代码 可以看到 DATALOG TXT 文件中的数据都通过串口发送回了电脑 效 果如下图 再把下面的代码下载进 arduino 控制板中 打开串口监控器看看效果 此例子展示如何在 SD 卡中创建于删除文件 SD 卡与 arduino 控制板使用 SPI 总线连接 MOSI pin 11 MISO pin 12 CLK pin 13 CS pin 4 include File myFile void setup Serial begin 9600 设置串口通信波特率为 9600 Serial print Initializing SD card 串口输出数据 Initializing SD card pinMode 10 OUTPUT if SD begin 4 如果从 CS 口与 SD 卡通信失败 串口输出信息 initialization failed Serial println initialization failed return Serial println initialization done CS 口与 SD 卡通信成功 串口输出信 息 initialization done if SD exists example txt 检查 example txt 文件是否存在 Serial println example txt exists 如果存在输出信息 example txt exists 至串口 else Serial println example txt doesn t exist 不存在输出信息 example txt doesn t exist 至串口 Serial println Creating example txt myFile SD open example txt FILE WRITE 打开 example txt 如果没有 自动创建 写入状态 myFile close 关闭文件 if SD exists example txt Serial println example txt exists else Serial println example txt doesn t exist Serial println Removing example txt SD remove example txt 删除文件 example txt if SD exists example txt Serial println example txt exists else Serial println example txt doesn t exist void loop 复制代码 下面图就是串口监视器显示的结果 显示文件创建于删除的过程 再把下面的代码传入 arduino 控制板 看看效果 include File myFile void setup Serial begin 9600 Serial print Initializing SD card pinMode 10 OUTPUT if SD begin 4 Serial println initialization failed return Serial println initialization done myFile SD open test txt FILE WRITE if myFile Serial print Writing to test txt myFile println testing 1 2 3 myFile close Serial println done else Serial println error opening test txt myFile SD open test txt if m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业统计年报会课件
- 年度安全培训计划总结课件
- 年度安全培训签到表课件
- 工伤停工留薪期合同到期补充协议8篇
- 农发行鹤岗市工农区2025秋招笔试综合模拟题库及答案
- 公考天津真题2025
- 2025年浙江公务员真题
- 平衡的稳定性课件
- 农发行聊城市冠县2025秋招无领导小组面试案例库
- 2025年固态电池在风力发电储能系统的技术创新与应用报告
- 2024年急性胰腺炎急诊诊治专家共识解读课件
- (必会)中级《审计理论与实务》近年考试真题题库(300题)
- 食品安全与日常饮食智慧树知到期末考试答案章节答案2024年中国农业大学
- 烘焙与甜点制作
- T-CRHA 028-2023 成人住院患者静脉血栓栓塞症风险评估技术
- 线路光缆施工方案
- 弹塑性力学讲稿课件
- 心怀国防梦争做好少年中小学生国防教育日主题班会课件
- 《运动的快慢》速度、平均速度与瞬时速度课件
- 地基事故案例分析
- 2023淘宝村研究报告
评论
0/150
提交评论