Arduino中读取SD卡文本文件数据
2023-12-15 19:43:01
1、硬件
2、代码
#include <SD.h>
#include <SPI.h> // needed for Arduino versions later than 0018
const long _1000msTime = 1000; // 1000 milli seconds
unsigned long _1000msLastTime;
File myFile;
int date;
int Lastdate;
String strDate;//读出的SD,每一行数据
int pinSD = 4;
int pinW5500 = 53;
/****************按行读取SD卡内的动作**************/
String ReadSdLine() {
String myStr;
digitalWrite(pinW5500,HIGH);
while ((date = myFile.read()) >= 0)
{
if ((date == 10) && (13 == Lastdate))
{
break;
}
else
{
myStr += char(date);
}
Lastdate = date;
}
return myStr;
}
void setup()
{
// 打开串口
Serial.begin(9600);
while (!Serial)
{
; //等待串口连接。仅本机USB口使用。
}
Serial.println("Serial is opened.");
//SD卡初始化
if (!SD.begin(pinSD)) {
Serial.println("initialization failed!");
return;
}
myFile = SD.open("VRtest.txt");
}
void loop()
{
TimeProc();
}
void TimeProc()
{
String m_strd;
//1000ms执行一次
if ((millis() - _1000msLastTime) >= _1000msTime)
{
_1000msLastTime = millis( );
//
m_strd = ReadSdLine();
if(m_strd!="")
{
//如果当前行不为空,表示动作文件没有到底
strDate=m_strd;
//SendToMBox(strDate);/将这行字符串给解析函数
Serial.println(strDate);
}
else
{
/动作文件到底
Serial.println("End Play");
}
}
}
3、测试
文本数据
将读取的数据发送到串口中
文章来源:https://blog.csdn.net/panjinliang066333/article/details/135022433
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!