|
|
本帖最后由 zerglingbug 于 2014-4-11 17:47 编辑
RT 从COM口读取字符串 并且通过逗号分割成4个部分 基本已经实现,唯独没法去除逗号,求大大帮忙看看是啥问题。
- #include <Stdio.h>
- String comdata1 = "";
- char t1[4];
- char t2[4];
- char t3[4];
- char t4[4];
- int i;
- int v;
- int j1;
- int j2;
- int j3;
- int j4;
- void setup()
- {
- Serial.begin(9600);
- }
- void loop()
- {
- while (Serial.available() > 0)
- {
- comdata1 += char(Serial.read());
- delay(2);};
-
- for(i=0,j1=0,j2=0,j3=0,j4=0,v=0;i<10;i++)
- {if (v==0)
- {
- if(comdata1[i]==',')
- v=1;
- t1[j1]=comdata1[i];
- j1++;
- }
- else if (v==1)
- {if(comdata1[i]==',')
- v=2;
- t2[j2]=comdata1[i];
- j2++;}
- else if (v==2)
- {if(comdata1[i]==',')
- v=3;
- t3[j3]=comdata1[i];
- j3++;}
- else if (v==3)
- {
- t4[j4]=comdata1[i];
- j4++;}
- }
- if(v==1)
-
- int w1=atoi(t1);
-
-
- Serial.print(comdata1);
- Serial.print("//");
- Serial.print(t1);
- Serial.print("//");
- Serial.print(t2);
- Serial.print("//");
- Serial.print(t3);
- Serial.print("//");
- Serial.print(t4);
- Serial.println("");
- if(Serial.available() > 0)
- comdata1="";
- for(int i=0;i<10;i++)
- t1[i]='\0';
- for(int i=0;i<10;i++)
- t2[i]='\0';
- for(int i=0;i<10;i++)
- t3[i]='\0';
- for(int i=0;i<10;i++)
- t4[i]='\0';
- }
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|