如何在串口接收的数据中读取数字和字符串
1个回答
展开全部
String comdata = "";
String numData="";
String charData="";
void setup()
{
Serial.begin(9600); //串口开始,波特率9600
Serial.print("Arduino ready!"); //连接上电脑时发送一个字符串
}
void loop()
{
while (Serial.available() > 0)
{
comdata += char(Serial.read());
delay(2);
}
if (comdata.length() > 0)
{
Serial.println("comdata:");
for(int i=0;i<comdata.length();i++)
{
if(comdata[i]>='0'&&comdata[i]<='9')
numData+=(char)comdata[i];
else
charData+=(char)comdata[i];
}
Serial.println(numData);
Serial.println(charData);
numData="";
charData="";
comdata = "";
}
}
刚才试了一下 可以用 根据ascII码判断,不是很麻烦
好像也有判断字符和数字的函数
String numData="";
String charData="";
void setup()
{
Serial.begin(9600); //串口开始,波特率9600
Serial.print("Arduino ready!"); //连接上电脑时发送一个字符串
}
void loop()
{
while (Serial.available() > 0)
{
comdata += char(Serial.read());
delay(2);
}
if (comdata.length() > 0)
{
Serial.println("comdata:");
for(int i=0;i<comdata.length();i++)
{
if(comdata[i]>='0'&&comdata[i]<='9')
numData+=(char)comdata[i];
else
charData+=(char)comdata[i];
}
Serial.println(numData);
Serial.println(charData);
numData="";
charData="";
comdata = "";
}
}
刚才试了一下 可以用 根据ascII码判断,不是很麻烦
好像也有判断字符和数字的函数
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询