void parsmsg() { //int tkom1=0;//температура //int hkom1=0;//влажность //int batkom1=0; //String timekom1;//время прихода данных комната1 //int tkom2=0; //int hkom2=0; //int batkom2=0; //String timekom2; //int tkor=0; //int hkor=0; //int batkor=0; //String timekor; //int tbal=0; //int hbal=0; //int batbal=0; //String timebal; //String timebal; //t1+138c347v524h5 балкон //t2+243c401v528h моя комната // t3+230c357v469h зал // t5+230c357v469h коридор //9d+088h866s00v улица восток //timeul1 //tul1 //hul1 //osv1 //char msg[16];принятое сообщение int tdat;//температура int hdat;//влажность int vdat;//напряж батареи датчика int zndat; int osv; char token9[] = "9d";//улица char token11[] = "t1";//датчики char token12[] = "t2";//датчики char token13[] = "t3";//датчики char token14[] = "t4";//датчики char token15[] = "t5";//датчики char token17[] = "t7";//датчики akva int n=0; int p=0; boolean chet=0; char c ; delay(0); //*************************** Serial.println (msg); for (int j=0 ; j<15 ;j++) { c=msg[j];//принятая с премника перемнная if (p==9) { if (c==token9[1]){p=99;}//данные с ул датчика восток else{ p=0;} } if (p==101)//cравнение второго символа на соответствие t 1 { if (c==token11[1]){p=111;} } if (p==101)//cравнение второго символа на соответствие t 2 { if (c==token12[1]){p=112;} } if (p==101)//cравнение второго символа на соответствие t 3 { if (c==token13[1]){p=113;} } if (p==101)//cравнение второго символа на соответствие t 4 { if (c==token14[1]){p=114;} } if (p==101)//cравнение второго символа на соответствие t 4 { if (c==token17[1]){p=117;} } if (p==101)//cравнение второго символа на соответствие t 5 { if (c==token15[1]){p=115;} else{ p=0;} } //************************************************* delay(0); if (p==99) {// myFile.print(c);//d+237h895s05v nt=2; timeul1=timeserv;//время получения данных n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=2;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5){ tdat=(c-48)+tdat; if(zndat==1){tul1="-"+String (tdat/10)+"."+String (tdat%10); //температура знак -230 -23.0 } else {tul1=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } } if (n==7){hdat=(c-48)*100;}//влажность if (n==8){hdat=(c-48)*10+hdat;} if (n==9){ hdat=(c-48)+hdat; hul1=String (hdat/10)+"."+String (hdat%10); //влажность 866 86.6% } if (n==11){osv=10*(c-48);}//освещенность if (n==12) {osv=osv+(c-48); if(osv>99){osv=99;} osv1=String (osv)+"%"; }//sun // hourdu=t.hour;//время прихода данных час // mindu=t.min;//мин } //***************************************** delay(0); //*****************датчики температуры переносные*********************** //************************T1**************************************************** if (p==111) //выделение данных из принятой строки { timebal=timeserv;//время получения данных nt=3; //byte ntdat;номер датчика //byte zndat;знак температуры 0+ //int tdat;температура //int hdat;влажность //int vdat;напряж батареи датчика n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=0;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; tbal=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } if (n==7){vdat=(c-48)*100;}//напряж батареи датчика if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; batbal=String (vdat/100)+"."+String (vdat%100);//батарея 357v 3.75в } if (n==11){hdat=(c-48)*100;}//влажность if (n==12) {hdat=(c-48)*10+hdat; } if (n==13) {hdat=(c-48)+hdat; hbal=String (hdat/10)+"."+String (hdat%10); //влажность 866 86.6% } } delay(0); //**************************************** T2 if (p==112) //выделение данных из принятой строки {timekom2=timeserv;//время получения данных nt=4; n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=0;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; tkom2=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } if (n==7){vdat=(c-48)*100;}//напряж батареи датчика if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; batkom2=String (vdat/100)+"."+String (vdat%100);//батарея 357v 3.75в } if (n==11){hdat=(c-48)*100;}//влажность if (n==12) {hdat=(c-48)*10+hdat; } if (n==13) {hdat=(c-48)+hdat; hkom2=String (hdat/10)+"."+String (hdat%10); //влажность 866 86.6% } } delay(0); //**************************************** //**************************************** T3 if (p==113) //выделение данных из принятой строки {// myFile.print(c);//t2+103c375v299h9 nt=5; timekom1=timeserv;//время получения данных n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=0;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; tkom1=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } if (n==7){vdat=(c-48)*100;}//напряж батареи датчика if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; batkom1=String (vdat/100)+"."+String (vdat%100);//батарея 357v 3.75в } if (n==11){hdat=(c-48)*100;}//влажность if (n==12) {hdat=(c-48)*10+hdat; } if (n==13) {hdat=(c-48)+hdat; hkom1=String (hdat/10)+"."+String (hdat%10); //влажность 866 86.6% } } //**************************************** T4 **************************** /* if (p==114) //выделение данных из принятой строки {// myFile.print(c);//t1+103c375v299h9 ntdat=4; if(chet==0) { if( hourd4==t.hour) {fh=1; } else {fh=0; } chet=1; } hourd4=t.hour; mind4=t.min; //byte ntdat;номер датчика //byte zndat;знак температуры 0+ //int tdat;температура //int hdat;влажность //int vdat;напряж батареи датчика n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=0;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; for (int u =22 ; u >= 0; u = u--) { t4[u+1]=t4[u]; } if(zndat==1)//- {t14=tdat+1000; t4[0]=t14; } else {t14=tdat; t4[0]=t14; } } if (n==7){vdat=(c-48)*100;}//напряж батареи датчика if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; bat[3]=vdat; } if (n==11){hdat=(c-48)*100;}//влажность if (n==12) {hdat=(c-48)*10+hdat; for (int u =22 ; u >= 0; u = u--) { h4[u+1]=h4[u]; } h4[0]=hdat; } if (n==13) {hdat=(c-48)+hdat; h14=hdat; } }*/ delay(0); //**************************************** T5 if (p==115) //выделение данных из принятой строки {// myFile.print(c);//t2+103c375v299h9 timekor=timeserv;//время получения данных nt=7; n++; if (n==2){ if (c==45){zndat=1;//- }//znak else {zndat=0;//+ } } if (n==3) {tdat=(c-48)*100;} //температура if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; tkor=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } if (n==7){vdat=(c-48)*100;}//напряж батареи датчика if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; batkor=String (vdat/100)+"."+String (vdat%100);//батарея 357v 3.75в } if (n==11){hdat=(c-48)*100;}//влажность if (n==12) {hdat=(c-48)*10+hdat; } if (n==13) {hdat=(c-48)+hdat; hkor=String (hdat/10)+"."+String (hdat%10); //влажность 866 86.6% } } delay(0); //******************************************************************************* //**************************************** T7 if (p==117) //выделение данных из принятой строки {// myFile.print(c);//t7+247c251c243c024 timeakva=timeserv;//время получения данных nt=9;// номер терм для сайта n++; if (n==3) {tdat=(c-48)*100;} //температура t1 if (n==4){tdat=(c-48)*10+tdat;} if (n==5) {tdat=(c-48)+tdat; takva1=String (tdat/10)+"."+String (tdat%10); //температура без знака +230 +23.0 } if (n==7){vdat=(c-48)*100;}//t2 if (n==8){vdat=(c-48)*10+vdat;} if (n==9) {vdat=(c-48)+vdat; takva2=String (vdat/10)+"."+String (vdat%10);//t2 } if (n==11){hdat=(c-48)*100;}//t3 if (n==12){hdat=(c-48)*10+hdat;} if (n==13) {hdat=(c-48)+hdat; takva3=String (hdat/10)+"."+String (hdat%10);//t3 } } delay(0); //******************************************************************************* if ((c==token9[0])&&(p==0)){p=9;} if ((c==token11[0])&&(p==0)){p=101;}//cравнение первого символа на соответствие t }//for //************************************************* }//void pars