Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania bez odpowiedzi
Viewing all articles
Browse latest Browse all 21942

Dlaczego metoda indexOf w Arduino nie działa.

$
0
0

Witam, chciałbym się zapytać gdzie, może być tutaj błąd, ponieważ wywołując metodę na rzecz string metoda zawsze zwraca -1.

A dany argument znajduje się w łańcuchu.

Może jest jakaś inna metoda na znalezienie danego słowa w łańcuchy ?

#include <SoftwareSerial.h>

const byte rxPin = 2;
const byte txPin = 3;
SoftwareSerial esp8266 (rxPin, txPin);
bool sendC(char* cmd,char* rep){
  while(esp8266.available()>0 && esp8266.read()>-1){}
  int i=0;
  while(true){
    esp8266.print(cmd);
    if(esp8266.available() && esp8266.find(rep)){
      Serial.print(i);
      Serial.println(cmd);
      return true;
    }
    i+=1;
    }
}

void setup() {
  Serial.begin(115200);
  esp8266.begin(115200);

  if(sendC("AT+RST\r\n","ready") && sendC("AT+CWMODE=1\r\n","OK") && sendC("AT+CIPMUX=1\r\n","OK") && sendC("AT+CIPSERVER=1,80\r\n","OK")){
    Serial.println("SERVER START");
  }




}

void loop() {
if(esp8266.available()){
String s = String(char(esp8266.read()));
if(s.indexOf("HTTP") != -1){
  Serial.println("FOUND CONNECT");
}
Serial.print(s);

}



}

 

 

A to jest wynik, jaki dostaje na ekran po wgraniu kodu na płytkę.

 

2682AT+RST

31AT+CWMODE=1

207AT+CIPMUX=1

0AT+CIPSERVER=1,80

SERVER START

0,CONNECT

+IPD,0,430;GET / HTTP/1.1
Host: 00.186.213.100
Coneel6e5i9.
e0,CLOSED
0,CONNECT

+IPD,0.430:GET / HTTP/1.1
Host: 10.186.213.110
Cone-z6G3oatnn1,COONECT

+IPD,1,430:GET / HTTP/1.1
Host: 10.186/213.110
C⸮˫⸮
Iix 5n/na00,CLOSED
0,CONNECT

+IPD,0,430:GET / HTTP/1.1
Host: 10.186.213/110
ConacaAotwtn,1,CLOSED
0,CLOSED

 


Viewing all articles
Browse latest Browse all 21942