парсинг строк
- Войдите на сайт для отправки комментариев
Втр, 26/03/2019 - 23:06
#include <SoftwareSerial.h> #include <RCSwitch.h> int rele[3]; String valin = ""; int miq; int miw; int mie; int mir; int mit; int miy; int miu; int mii; int miol; String msq; String msw; String mse; String msr; String mst; String msy; String msu; String msi; String msol; String msok; int time1; int time2; int time3; int time4; long kolvo; long kol; RCSwitch mySwitch = RCSwitch(); void setup() { pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); Serial.begin(9600); mySwitch.enableReceive(0); // Receiver on interrupt 0 => that is pin #2 } void loop() { if (mySwitch.available() > 0) { int value = mySwitch.getReceivedValue(); if (value == 0) { // Serial.print("Unknown encoding"); } else { Serial.print("Received "); Serial.print( mySwitch.getReceivedValue() ); Serial.print(" / "); Serial.print( mySwitch.getReceivedBitlength() ); Serial.print("bit "); Serial.print("Protocol: "); Serial.println( mySwitch.getReceivedProtocol() ); delay(500); } mySwitch.resetAvailable(); } int inval = Serial.parseInt(); if (inval == 11) { digitalWrite (5, HIGH); } if (inval == 21) { digitalWrite (6, HIGH); } if (inval == 31) { digitalWrite (7, HIGH); } if (inval == 41) { digitalWrite (8, HIGH); } if (inval == 10) { digitalWrite (5, LOW); } if (inval == 20) { digitalWrite (6, LOW); } if (inval == 30) { digitalWrite (7, LOW); } if (inval == 40) { digitalWrite (8, LOW); } if (inval > 45){ String valin; valin= String(inval); char mas[20]; valin.toCharArray(mas, 20); Serial.println("запуск парсинга"); miq = msq.toInt(); miw = msw.toInt(); mie = mse.toInt(); mir = msr.toInt(); mit = mst.toInt(); miy = msy.toInt(); miu = msu.toInt(); mii = msi.toInt(); miol = msol.toInt(); if (mas[0] = 1) { msol = msq + msw; msok = msol + mse; msol = msok + msr; msok = msol + mst; msol = msok + msy; msok = msol + msu; msol = msok + msi; Serial.println("узнал номер реле"); } if (mas[0] = 2) { msol = msq + msw; msok = msol + mse; msol = msok + msr; msok = msol + mst; msol = msok + msy; msok = msol + msu; msol = msok + msi; Serial.println("узнал номер реле"); } if (mas[0] = 3) { msol = msq + msw; msok = msol + mse; msol = msok + msr; msok = msol + mst; msol = msok + msy; msok = msol + msu; msol = msok + msi; Serial.println("узнал номер реле"); } if (mas[0] = 4) { msol = msq + msw; msok = msol + mse; msol = msok + msr; msok = msol + mst; msol = msok + msy; msok = msol + msu; msol = msok + msi; Serial.println("узнал номер реле"); } time1 = msol.toInt(); Serial.println(time1); } } Надо чтобы я прислал команду типа 21000 - где первая цифра ето номер реле( всего их 4 ) а остольные ето время на которое я хочу включить реле(после окончания таймера реле виключилось) я хотел зделать так чтобы все переводилось в массив, первая цифра ето била номер реле, а остольние - время. код не доделан потому, что не приходит время. я новичок - строго за код не судите.
Кому надо ? Зачем надо ? Почему надо ? Никто не запрещал ?
это заклинание такое, для лексического онализатора, кричишь в него: "ПАРСИНГ СТОРК!!!" и все само раскладывается по таблицам имён.
шутки шутками, а код я не могу доделать(
значить, надо спросить у автора кода
шутки шутками, а код я не могу доделать(
а стоит ли? Там коде жуткая жуть... Не пользуйтесь таким "подсказками", найдите что-нибудь по-приличнее... а лучше пишите свое.