#include /* Arduino Starter Kit example Project 5 - Servo Mood Indicator This sketch is written to accompany Project 5 in the Arduino Starter Kit Parts required: servo motor 10 kilohm potentiometer 2 100 uF electrolytic capacitors Created 13 September 2012 by Scott Fitzgerald http://arduino.cc/starterKit This example code is part of the public domain */ // include the servo library #include #include Servo myServo; // create a servo object Servo myServo2; // create a servo object Servo myServo3; // create a servo object Servo myServo4; // create a servo object Servo myServo5; // create a servo object Servo myServo6; // create a servo object Servo myServo7; // create a servo object Servo myServo8; // create a servo object Servo myServo9; // create a servo object Servo myServo10; // create a servo object Servo myServo11; // create a servo object Servo myServo12; // create a servo object Servo myServo13; // create a servo object Servo myServo14; // create a servo object Servo myServo15; // create a servo object Servo myServo16; // create a servo object Servo myServo17; // create a servo object Servo myServo18; // create a servo object int const potPin = A0; // analog pin used to connect the potentiometer int potVal; // variable to read the value from the analog pin int angle,i,j; // variable to hold the angle for the servo motor char inData[20]; // Allocate some space for the string char inChar; // Where to store the character read byte index = 0; // Index into array; where to store the character int str[20],serIn,v1,v2,v3,v4,v5,v6,v7,v8,vn,vi,vn2,vn1,vl,PN; byte ps0,ps1,ps2,ps3,ps4,ps5,ps6,ps7,ps8,ps9,ps10,ps11,ps12,ps13,ps14,ps15,ps16,ps17,ps18; int vp01=0,vp02=0,vp03=0,vp04=0,vp05=0,vp06=0,vp07=0,vp08=0; int vp09=0,vp10=0,vp11=0,vp12=0,vp13=0,vp14=0,vp15=0,vp16=0; int vxi,vs01,addrn_1,addrn_2,v_run; String retrievedString; String strx,stry; byte out1,out2,out3,out4,out5,out6,out7,out8,out9,out10,out11,out12,out13,out14,out15,out16,out17,out18; void intxx() { if(Serial2.available()) { //inform that Arduino heard you saying something //keep reading and printing from serial untill there are bytes in the serial buffer i=0; while (Serial2.available()>0){ serIn = Serial2.read(); //read Serial str[i]=serIn; // Serial.print(serIn); //prints the character just read i++; } //the serial buffer is over just go to the line (or pass your favorite stop char) /* Serial1.print(str[0]); Serial1.print(":"); Serial1.print(str[1]); Serial1.print(":"); Serial1.print(str[2]); Serial1.print(":"); Serial1.print(str[3]); Serial1.print(":"); Serial1.print(str[4]); Serial1.print(":"); Serial1.print(str[5]); Serial1.print(":"); Serial1.print(str[6]); Serial1.print(":"); Serial1.print(str[7]); Serial1.print(":"); Serial1.println(str[8]); */ if (str[0]=='S' & str[1]=='V' & str[2]=='1') { v1=str[4] & 0b00001111; v2=str[5] & 0b00001111; v3=str[6] & 0b00001111; v4=str[7] & 0b00001111; v5=str[8] & 0b00001111; v6=str[9] & 0b00001111; v7=v1*100+v2*10+v3; if (str[3]=='1') {EEPROM.write(0,v7);} if (str[3]=='2') {EEPROM.write(1,v7);} if (str[3]=='3') {EEPROM.write(2,v7);} if (str[3]=='4') {EEPROM.write(3,v7);} if (str[3]=='5') {EEPROM.write(4,v7);} if (str[3]=='6') {EEPROM.write(5,v7);} if (str[3]=='7') {EEPROM.write(6,v7);} if (str[3]=='8') {EEPROM.write(7,v7);} if (str[3]=='9') {EEPROM.write(8,v7);} if (str[3]=='A') {EEPROM.write(9,v7);} if (str[3]=='B') {EEPROM.write(10,v7);} if (str[3]=='C') {EEPROM.write(11,v7);} if (str[3]=='D') {EEPROM.write(12,v7);} if (str[3]=='E') {EEPROM.write(13,v7);} if (str[3]=='F') {EEPROM.write(14,v7);} if (str[3]=='G') {EEPROM.write(15,v7);} if (str[3]=='H') {EEPROM.write(16,v7);} if (str[3]=='I') {EEPROM.write(17,v7);} if (str[3]=='S') {EEPROM.write(20,v7);} } } } void setup() { Wire.begin(); Serial.begin(9600); Serial2.begin(9600); // open a serial connection to your computer myServo.attach(2); // attaches the servo on pin 9 to the servo object myServo2.attach(3); // attaches the servo on pin 9 to the servo object myServo3.attach(4); // attaches the servo on pin 9 to the servo object myServo4.attach(5); // attaches the servo on pin 9 to the servo object myServo5.attach(22); // attaches the servo on pin 9 to the servo object myServo6.attach(24); // attaches the servo on pin 9 to the servo object myServo7.attach(26); // attaches the servo on pin 9 to the servo object myServo8.attach(28); // attaches the servo on pin 9 to the servo object myServo9.attach(10); // attaches the servo on pin 9 to the servo object myServo10.attach(38); // attaches the servo on pin 9 to the servo object myServo11.attach(6); // attaches the servo on pin 9 to the servo object myServo12.attach(7); // attaches the servo on pin 9 to the servo object myServo13.attach(8); // attaches the servo on pin 9 to the servo object myServo14.attach(9); // attaches the servo on pin 9 to the servo object myServo15.attach(30); // attaches the servo on pin 9 to the servo object myServo16.attach(32); // attaches the servo on pin 9 to the servo object myServo17.attach(34); // attaches the servo on pin 9 to the servo object myServo18.attach(36); // attaches the servo on pin 9 to the servo object /* // writeStringToEEPROM(0, "1111111111Hello Arduino"); // writeStringToEEPROM(50, "sakaaaaaaaaa_ok222222222Hello Arduino"); // writeStringToEEPROM(100, "33333333333Hello Arduino"); // writeStringToEEPROM(150, "44444444444Hello Arduino"); retrievedString = readStringFromEEPROM(0); Serial.println(retrievedString); retrievedString = readStringFromEEPROM(50); Serial.println(retrievedString); retrievedString = readStringFromEEPROM(100); Serial.println(retrievedString); retrievedString = readStringFromEEPROM(150); Serial.println(retrievedString); Serial.print(" a000="); Serial.println(readEEPROM(0));dispeeprom(0); Serial.print("a2000="); Serial.println(readEEPROM(2000));dispeeprom(2000); Serial.print("a4000="); Serial.println(readEEPROM(4000));dispeeprom(4000); Serial.print("a6000="); Serial.println(readEEPROM(6000));dispeeprom(6000); Serial.print("a8000="); Serial.println(readEEPROM(6000));dispeeprom(8000); EEPROM.write(0,90); EEPROM.write(1,90); EEPROM.write(2,90); EEPROM.write(3,90); EEPROM.write(4,90); EEPROM.write(5,90); EEPROM.write(6,90); EEPROM.write(7,90); EEPROM.write(8,90); EEPROM.write(9,90); EEPROM.write(10,90); EEPROM.write(11,90); EEPROM.write(12,90); EEPROM.write(13,90); EEPROM.write(14,90); EEPROM.write(15,90); EEPROM.write(16,90); EEPROM.write(17,90); */ EEPROM.write(20,3); //ps0=EEPROM.read(0); //ps1=EEPROM.read(1); //ps2=EEPROM.read(2); //ps3=EEPROM.read(3); //ps4=EEPROM.read(4); ps0=100; ps1=100; ps2=100; ps3=100; ps4=100; ps5=100; ps6=100; ps7=100; ps8=100; ps9=100; EEPROM.write(1,100); EEPROM.write(2,100); EEPROM.write(3,100); EEPROM.write(4,100); EEPROM.write(5,100); EEPROM.write(6,100); EEPROM.write(7,100); EEPROM.write(8,100); EEPROM.write(9,100); set_servo(); } void set_servo() { myServo.write(180-ps1); myServo2.write(ps2); myServo3.write(180-ps3); myServo4.write(ps4); myServo5.write(ps5); myServo6.write(180-ps6); myServo7.write(180-ps7); myServo8.write(ps8); } void dispeeprom(int addr ) {String stt=""; if ( readEEPROM(addr)>0) { int vxx=readEEPROM(addr); for (int i=0 ;iEEPROM.read(1)){ps1=ps1-1;out1=1;} if(ps2 ==EEPROM.read(2)){out2=0;} else if (ps2 EEPROM.read(2)){ps2=ps2-1;out2=1;} if(ps3 ==EEPROM.read(3)){out3=0;} else if (ps3 EEPROM.read(3)){ps3=ps3-1;out3=1;} if(ps4 ==EEPROM.read(4)){out4=0;} else if (ps4 EEPROM.read(4)){ps4=ps4-1;out4=1;} if(ps5 ==EEPROM.read(5)){out5=0;} else if (ps5 EEPROM.read(5)){ps5=ps5-1;out5=1;} if(ps6 ==EEPROM.read(6)){out6=0;} else if (ps6 EEPROM.read(6)){ps6=ps6-1;out6=1;} if(ps7 ==EEPROM.read(7)){out7=0;} else if (ps7 EEPROM.read(7)){ps7=ps7-1;out7=1;} if(ps8 ==EEPROM.read(8)){out8=0;} else if (ps8 EEPROM.read(8)){ps8=ps8-1;out8=1;} if(ps9 ==EEPROM.read(9)){out9=0;} else if (ps9 EEPROM.read(9)){ps9=ps9-1;out9=1;} for (j=1;j> 8)); // MSB Wire.write((int)(eeaddress & 0xFF)); // LSB Wire.write(data); Wire.endTransmission(); delay(5); } byte readEEPROM( unsigned int eeaddress ) { byte rdata = 0xFF; Wire.beginTransmission(0x50); Wire.write((int)(eeaddress >> 8)); // MSB Wire.write((int)(eeaddress & 0xFF)); // LSB Wire.endTransmission(); Wire.requestFrom(0x50,1); if (Wire.available()) rdata = Wire.read(); return rdata; } String int_to_str(int vnn) { String vss=""; if ( vnn<10 ) vss= "0000"+String(vnn); else if ( vnn<100 ) vss= "000"+String(vnn); else if ( vnn<1000 ) vss= "00"+String(vnn); else if ( vnn<10000 ) vss= "0"+String(vnn); else if ( vnn<100000 ) vss= String(vnn); return vss; } String int_to_str6(long vnn) { String vss=""; if ( vnn<10 ) vss= "00000"+String(vnn); else if ( vnn<100 ) vss= "0000"+String(vnn); else if ( vnn<1000 ) vss= "000"+String(vnn); else if ( vnn<10000 ) vss= "00"+String(vnn); else if ( vnn<100000 ) vss= "0"+String(vnn); else if ( vnn<1000000 ) vss= String(vnn); return vss; } String int_to_str3(int vnn) { String vss=""; if ( vnn<10 ) vss= "00"+String(vnn); else if ( vnn<100 ) vss= "0"+String(vnn); else if ( vnn<1000 ) vss= String(vnn); return vss; } void run_01(int VPN) { if (vs01==0) { vs01=22; vxi=1; int vlnz=20; addrn_2=VPN *2000+1; addrn_1=readEEPROM(VPN*2000); retrievedString = readStringFromEEPROM(addrn_2); Serial.print("ss5551=");Serial.println(retrievedString); // Serial.print("addrn_2=");Serial.println(addrn_2); // digitalWrite(out1,0);digitalWrite(out2,0); pro_run(retrievedString); outs(EEPROM.read(20)); Serial.print("vln555=");Serial.println(EEPROM.read(20)); while (out1==1 || out2==1 || out3==1 || out4==1 || out5==1 || out6==1 || out7==1 || out8==1 || out9==1) { outs(EEPROM.read(20)); // Serial.println("addrn_1555555555555555555555555"); } if (vs01==22 && out1==0 && out2==0 && out3==0 && out4==0 && out5==0 && out6==0 && out7==0 && out8==0 && out9==0) {while ( vxi=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { vstr=vstr+str[vi]; vi++;}} vn2= vstr2.toInt(); vn1=vstr.toInt()*100+vn2; vn2=vstr.toInt()+vn2; switch (str[vii]) { case 'X' : switch (str[viii]) { case '+': sen_data("1+"+String(vn1),301); break; case '-': sen_data("1-"+String(vn1),301); break; case 'F': sen_data("1F"+String(vn1),301); break; case 'R': sen_data("1R"+String(vn1),301); break; case 'O': sen_data("1O"+String(vn1),301); break; } break; case 'Y': switch (str[viii]) { case '+': sen_data("2+"+String(vn1),301); break; case '-': sen_data("2-"+String(vn1),301); break; case 'F': sen_data("2F"+String(vn1),301); break; case 'R': sen_data("2R"+String(vn1),301); break; case 'O': sen_data("2O"+String(vn1),301); break; } break; case 'Z': switch (str[viii]){ case '+': sen_data("C3"+String(vn1),101); break; case '-': sen_data("C4"+String(vn1),101); break; case 'F': sen_data("CF"+String(vn1),101); break; case 'R': sen_data("CR"+String(vn1),101); break; case 'O': sen_data("CO"+String(vn1),101); break; } break; case 'A': switch (str[viii]){ case '+': Serial.print("AD3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AD4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AD21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AD22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AD23");Serial.println(int_to_str(vn2)); break; } break; case 'B': switch (str[viii]){ case '+': Serial.print("AE3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AE4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AE21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AE22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AE23");Serial.println(int_to_str(vn2)); break; } break; case 'C': switch (str[viii]){ case '+': Serial.print("AF3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AF4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AF21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AF22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AF23");Serial.println(int_to_str(vn2)); break; } break; case 'D': switch (str[viii]){ case '+': Serial.print("AG3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AG4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AG21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AG22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AG23");Serial.println(int_to_str(vn2)); break; } break; } } else { vstr="";vstr2=""; while (((int)str[vi]>=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { Serial.print("vxx="); Serial.println(vstr); Serial.print("vx2x="); Serial.println(vstr2); Serial.print("vii="); Serial.println(str[vii]); vstr=vstr+str[vi]; vi++;} } Serial.print("xxvn1="); Serial.println(vn1); Serial.print("xxvii="); Serial.println(str[vii]); vn2= vstr2.toInt(); vn1=vstr.toInt(); vn2= vstr.toInt(); switch (str[vii]) { /* case 'X': sen_data("S1"+String(vn1),905); break; case 'Y': sen_data("S2"+String(vn1),905); break; case 'Z': sen_data("S3"+String(vn1),905); break; case 'A': sen_data("S4"+String(vn1),905); break; case 'B': sen_data("S5"+String(vn1),905); break; case 'C': sen_data("S6"+String(vn1),905); break; case 'D': sen_data("D1"+String(vn1),905); break; case 'G': digitalWrite(out5,0); sen_data("S9"+String(vn1),905); break; */ case 'X': sen_data("S1"+String(vn1),905); break; case 'Y': sen_data("S2"+String(vn1),905); break; case 'Z': sen_data("S3"+String(vn1),905); break; case 'A': sen_data("S4"+String(vn1),905); break; case 'B': sen_data("S5"+String(vn1),905); break; case 'C': sen_data("S6"+String(vn1),905); break; case 'D': sen_data("SD"+String(vn1),905); break; case 'G': digitalWrite(out5,0); sen_data("G"+String(vn1),905); break; case 'F': digitalWrite(out5,0); sen_data("F"+String(vn1),905); break; } } } } } //************************** if (str.substring(0, 2) == "GX") { String vstr,vstr2; int len=str.length(); for (int i=2;i=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { vstr=vstr+str[vi]; vi++;}} vn2= vstr2.toInt(); vn1=vstr.toInt()*100+vn2; vn2=vstr.toInt()+vn2; switch (str[vii]) { case 'X' : switch (str[viii]) { case '+': sen_data("1+"+String(vn1),301); break; case '-': sen_data("1-"+String(vn1),301); break; case 'F': sen_data("1F"+String(vn1),301); break; case 'R': sen_data("1R"+String(vn1),301); break; case 'O': sen_data("1O"+String(vn1),301); break; } break; case 'Y': switch (str[viii]) { case '+': sen_data("2+"+String(vn1),301); break; case '-': sen_data("2-"+String(vn1),301); break; case 'F': sen_data("2F"+String(vn1),301); break; case 'R': sen_data("2R"+String(vn1),301); break; case 'O': sen_data("2O"+String(vn1),301); break; } break; case 'Z': switch (str[viii]){ case '+': sen_data("C3"+String(vn1),101); break; case '-': sen_data("C4"+String(vn1),101); break; case 'F': sen_data("CF"+String(vn1),101); break; case 'R': sen_data("CR"+String(vn1),101); break; case 'O': sen_data("CO"+String(vn1),101); break; } break; case 'A': switch (str[viii]){ case '+': Serial.print("AD3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AD4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AD21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AD22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AD23");Serial.println(int_to_str(vn2)); break; } break; case 'B': switch (str[viii]){ case '+': Serial.print("AE3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AE4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AE21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AE22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AE23");Serial.println(int_to_str(vn2)); break; } break; case 'C': switch (str[viii]){ case '+': Serial.print("AF3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AF4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AF21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AF22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AF23");Serial.println(int_to_str(vn2)); break; } break; case 'D': switch (str[viii]){ case '+': Serial.print("AG3");Serial.println(int_to_str(vn1)); break; case '-': Serial.print("AG4");Serial.println(int_to_str(vn1)); break; case 'F': Serial.print("AG21");Serial.println(int_to_str(vn2)); break; case 'R': Serial.print("AG22");Serial.println(int_to_str(vn2)); break; case 'O': Serial.print("AG23");Serial.println(int_to_str(vn2)); break; } break; } } else { vstr="";vstr2=""; while (((int)str[vi]>=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { Serial.print("vxx="); Serial.println(vstr); Serial.print("vx2x="); Serial.println(vstr2); Serial.print("vii="); Serial.println(str[vii]); vstr=vstr+str[vi]; vi++;} } Serial.print("xxvn1="); Serial.println(vn1); Serial.print("xxvii="); Serial.println(str[vii]); vn2= vstr2.toInt(); vn1=vstr.toInt()*100+vn2; vn2= vstr.toInt(); switch (str[vii]) { case 'X': sen_data("M1"+String(vn1),903); break; case 'Y': sen_data("M2"+String(vn1),903); break; case 'Z': sen_data("M3"+String(vn1),903); break; case 'A': sen_data("M4"+String(vn1),903); break; case 'B': sen_data("M5"+String(vn1),903); break; case 'C': sen_data("M6"+String(vn1),903); break; case 'G': digitalWrite(out3,0); sen_data("MG"+String(vn1),903); break; } } } } } //***************************** if (str.substring(0, 2) == "G1") { String vstr,vstr2; int len=str.length(); for (int i=2;i=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { vstr=vstr+str[vi]; vi++;}} vn2= vstr2.toInt(); vn1=vstr.toInt()*100+vn2; vn2=vstr.toInt()+vn2; switch (str[vii]) { case 'X' : switch (str[viii]) { case '+': EEPROM.write(1,EEPROM.read(1)+vn2); break; case '-': EEPROM.write(1,EEPROM.read(1)-vn2); break; } break; case 'Y': switch (str[viii]) { case '+': EEPROM.write(2,EEPROM.read(2)+vn2); break; case '-': EEPROM.write(2,EEPROM.read(2)-vn2); break; } break; case 'Z': switch (str[viii]){ case '+': EEPROM.write(3,EEPROM.read(3)+vn2); break; case '-': EEPROM.write(3,EEPROM.read(3)-vn2); break; } break; case 'A': switch (str[viii]){ case '+': EEPROM.write(4,EEPROM.read(4)+vn2); break; case '-': EEPROM.write(4,EEPROM.read(4)-vn2); break; } break; case 'B': switch (str[viii]){ case '+': EEPROM.write(5,EEPROM.read(5)+vn2); break; case '-': EEPROM.write(5,EEPROM.read(5)-vn2); break; } break; case 'C': switch (str[viii]){ case '+': EEPROM.write(6,EEPROM.read(6)+vn2); break; case '-': EEPROM.write(6,EEPROM.read(6)-vn2); break; } break; case 'D': switch (str[viii]){ case '+': EEPROM.write(7,EEPROM.read(7)+vn2); break; case '-': EEPROM.write(7,EEPROM.read(7)-vn2); break; } break; case 'E': switch (str[viii]){ case '+': EEPROM.write(8,EEPROM.read(8)+vn2); break; case '-': EEPROM.write(8,EEPROM.read(8)-vn2); break; } break; case 'F': switch (str[viii]){ case '+': EEPROM.write(9,EEPROM.read(9)+vn2); break; case '-': EEPROM.write(9,EEPROM.read(9)-vn2); break; } break; } } else { vstr="";vstr2=""; while (((int)str[vi]>=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { // Serial.print("vxx="); Serial.println(vstr); //Serial.print("vx2x="); Serial.println(vstr2); // Serial.print("vii="); Serial.println(str[vii]); vstr=vstr+str[vi]; vi++;} } // Serial.print("xxvn1="); Serial.println(vn1); //Serial.print("xxvii="); Serial.println(str[vii]); vn2= vstr2.toInt(); vn1=vstr.toInt() ; vn2= vstr.toInt(); switch (str[vii]) { case 'X': EEPROM.write(1,vn1); break; case 'Y': EEPROM.write(2,vn1); break; case 'Z': EEPROM.write(3,vn1); break; case 'A': EEPROM.write(4,vn1); break; case 'B': EEPROM.write(5,vn1); break; case 'C': EEPROM.write(6,vn1); break; case 'D': EEPROM.write(7,vn1); break; case 'E': EEPROM.write(8,vn1); break; case 'F': EEPROM.write(9,vn1); break; case 'V': EEPROM.write(20,vn1);Serial.print("vnxxxxsakxxxx1"); Serial.println(vn1); break; } } } } } if (str.substring(0, 2) == "GX") { String vstr,vstr2; int len=str.length(); for (int i=2;i=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { vstr=vstr+str[vi]; vi++;}} vn2= vstr2.toInt(); vn1=vstr.toInt()*100+vn2; vn2=vstr.toInt()+vn2; switch (str[vii]) { case 'X' : Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("A3"+String(vn1),101); break; case '-': sen_data("A4"+String(vn1),101); break; case 'F': sen_data("AF"+String(vn1),101); break; case 'R': sen_data("AR"+String(vn1),101); break; case 'O': sen_data("AO"+String(vn1),101); break; case 'S': break; } break; case 'Y': Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("B3"+String(vn1),101); break; case '-': sen_data("B4"+String(vn1),101); break; case 'F': sen_data("BF"+String(vn1),101); break; case 'R': sen_data("BR"+String(vn1),101); break; case 'O': sen_data("BO"+String(vn1),101); break; case 'S': break; } break; case 'Z': switch (str[viii]){ case '+': sen_data("C3"+String(vn1),101); break; case '-': sen_data("C4"+String(vn1),101); break; case 'F': sen_data("CF"+String(vn1),101); break; case 'R': sen_data("CR"+String(vn1),101); break; case 'O': sen_data("CO"+String(vn1),101); break; case 'S': break; } break; case 'A': Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("D3"+String(vn1),101); break; case '-': sen_data("D4"+String(vn1),101); break; case 'F': sen_data("DF"+String(vn1),101); break; case 'R': sen_data("DR"+String(vn1),101); break; case 'O': sen_data("DO"+String(vn1),101); break; case 'S': break; } break; case 'B': Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("E3"+String(vn1),101); break; case '-': sen_data("E4"+String(vn1),101); break; case 'F': sen_data("EF"+String(vn1),101); break; case 'R': sen_data("ER"+String(vn1),101); break; case 'O': sen_data("EO"+String(vn1),101); break; case 'S': break; } break; case 'C': Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("F3"+String(vn1),101); break; case '-': sen_data("F4"+String(vn1),101); break; case 'F': sen_data("FF"+String(vn1),101); break; case 'R': sen_data("FR"+String(vn1),101); break; case 'O': sen_data("FO"+String(vn1),101); break; case 'S': break; } break; case 'D': Serial.print("vx="); Serial.println(vstr); Serial.print("vx2="); Serial.println(vstr2); Serial.print("vx2x="); Serial.println(int_to_str(vn1)); switch (str[viii]){ case '+': sen_data("G3"+String(vn1),101); break; case '-': sen_data("G4"+String(vn1),101); break; case 'F': sen_data("GF"+String(vn1),101); break; case 'R': sen_data("GR"+String(vn1),101); break; case 'O': sen_data("GO"+String(vn1),101); break; case 'S': break; } break; } } else { vstr="";vstr2=""; while (((int)str[vi]>=48 and (int) str[vi]<=57 )or str[vi]=='.') { if (str[vi]=='.'){ Serial.println("ppppp");vi++; while ((int)str[vi]>=48 and (int) str[vi]<=57 ) {vstr2=vstr2+str[vi]; vi++;} } else { vstr=vstr+str[vi]; vi++;}} vn2= vstr2.toInt(); vn1=vstr.toInt()*10+vn2; vn2= vstr.toInt(); switch (str[vii]) { case 'X':digitalWrite(out1,0); // sen_data(int_to_str3(vn1)+"200",901); if (vl==0 ) sen_data(int_to_str6(vn1)+"0",901); if (vl==1 ) sen_data(int_to_str6(vn1)+"1",901); if (vl==2 ) sen_data(int_to_str6(vn1)+"2",901); if (vl==3 ) sen_data(int_to_str6(vn1)+"3",901); break; case 'Y':digitalWrite(out2,0); // sen_data(int_to_str3(vn1)+"200",902); if (vl==0 ) sen_data(int_to_str3(vn1)+"150",902); if (vl==1 ) sen_data(int_to_str3(vn1)+"100",902); if (vl==2 ) sen_data(int_to_str3(vn1)+"150",902); if (vl==3 ) sen_data(int_to_str3(vn1)+"255",902); break; case 'B': sen_data("E1"+String(vn1),101); break; case 'C': sen_data("F1"+String(vn1),101); break; case 'D': sen_data("G1"+String(vn1),101); break; case 'V': vl=vn2; break; } } } } } }