arduino学习笔记18SD卡读写实验教程文件Word格式文档下载.docx
- 文档编号:18565359
- 上传时间:2022-12-28
- 格式:DOCX
- 页数:14
- 大小:636.29KB
arduino学习笔记18SD卡读写实验教程文件Word格式文档下载.docx
《arduino学习笔记18SD卡读写实验教程文件Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《arduino学习笔记18SD卡读写实验教程文件Word格式文档下载.docx(14页珍藏版)》请在冰豆网上搜索。
如果没有,也可以完成此实验,只不过数值是不停跳动的干扰源。
*SD卡与arduino控制板使用SPI总线连接
**MOSI-pin11
**MISO-pin12
**CLK-pin13
**CS-pin4
*/
#include<
SD.h>
//CS引脚为pin4,这里也沿用官方默认设置
constintchipSelect=4;
//设定CS接口
voidsetup()
{
Serial.begin(9600);
//设置串口通信波特率为9600
Serial.print("
InitializingSDcard..."
);
//串口输出数据InitializingSDcard...
pinMode(10,OUTPUT);
if(!
SD.begin(chipSelect)){
//如果从CS口与SD卡通信失败,串口输出信息Cardfailed,ornotpresent
Serial.println("
Cardfailed,ornotpresent"
return;
}
Serial.println("
cardinitialized."
//与SD卡通信成功,串口输出信息cardinitialized.
voidloop()
//定义数组
StringdataString="
"
;
//读取三个传感器值,写入数组
for(intanalogPin=0;
analogPin<
3;
analogPin++){
intsensor=analogRead(analogPin);
dataString+=String(sensor);
if(analogPin<
2){
dataString+="
"
}
//打开文件,注意在同一时间只能有一个文件被打开
//如果你要打开另一个文件,就需要先关闭前一个
FiledataFile=SD.open("
datalog.txt"
FILE_WRITE);
//打开datalog.txt文件,读写状态,位置在文件末尾。
if(dataFile){
dataFile.println(dataString);
dataFile.close();
//数组dataString输出到串口
Serial.println(dataString);
}
//如果无法打开文件,串口输出错误信息erroropeningdatalog.txt
else{
erroropeningdatalog.txt"
复制代码
下载完成后,打开串口监视器。
控制板开始工作后会看到如下画面,图中每一行上就是每次记录的三个传感器数值,本次实验并没有接传感器,所以数值是周围干扰源的杂乱信号。
关闭arduino电源后把SD卡取出,接入电脑后,可以看到SD卡中有一个DATALOG.TXT文件,打开后有可以看到,此文件中的信息就是记录下的各个传感器的数值。
第一个代码实验完以后,SD卡中的DATALOG.TXT不要删除,把下面代码下载进arduino中,打开串口监视器,看看效果。
这个例子展示如何通过SD库从SD卡中读取一个文件,并且把数据通过串口发送。
//don'
tdoanythingmore:
//打开datalog.txt文件
while(dataFile.available()){
//检查是否dataFile是否有数据
Serial.write(dataFile.read());
//如果有数据则把数据发送到串口
//关闭dataFile
//如果文件无法打开串口发送信息erroropeningdatalog.txt
可以看到,DATALOG.TXT文件中的数据都通过串口发送回了电脑。
效果如下图:
再把下面的代码下载进arduino控制板中,打开串口监控器看看效果。
此例子展示如何在SD卡中创建于删除文件
FilemyFile;
SD.begin(4)){
//如果从CS口与SD卡通信失败,串口输出信息initializationfailed!
initializationfailed!
initializationdone."
//CS口与SD卡通信成功,串口输出信息initializationdone.
if(SD.exists("
example.txt"
)){
//检查example.txt文件是否存在
example.txtexists."
//如果存在输出信息example.txtexists.至串口
example.txtdoesn'
texist."
//不存在输出信息example.txtdoesn'
texist.至串口
Creatingexample.txt..."
myFile=SD.open("
//打开example.txt,如果没有自动创建,写入状态
myFile.close();
//关闭文件
)){
Removingexample.txt..."
SD.remove("
//删除文件example.txt
)){
下面图就是串口监视器显示的结果,显示文件创建于删除的过程。
再把下面的代码传入arduino控制板,看看效果
SD.begin(4)){
test.txt"
if(myFile){
Serial.print("
Writingtotest.txt..."
myFile.println("
testing1,2,3."
myFile.close();
done."
}else{
erroropeningtest.txt"
test.txt:
while(myFile.available()){
Serial.write(myFile.read());
串口监视器中可以看到如下画面
把SD卡接入电脑,可以在里面找到TEST.TXT文件,里面的内容如下。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arduino 学习 笔记 18 SD 读写 实验 教程 文件