Hirdetés

Új hozzászólás Aktív témák

  • Janos250

    őstag

    válasz Teasüti #9076 üzenetére

    "Ti tudtátok, hogy a Stream osztályban ilyen függvények vannak, hogy readStringUntil(), parseInt(), stb?"
    A HardwareSerial.cpp-ben ez van:
    HardwareSerial Serial(0);
    Vagyis a HardwareSerial típusú Serial objektum tőlünk függetlenül "automatikusan" létrehozásra kerül.

    A HardwareSerial.h-ban viszont ez van:
    class HardwareSerial: public Stream
    Vagyis a HardwareSerial osztály örökli a Stream osztály public és protected tagfüggvényeit, adattagjait.

    A Stream.h-ban viszont ez van:
    class Stream: public Print
    Vagyis a Stream osztály meg örököl a Print osztálytól, így közvetve a HardwareSerial is örökol a Print osztályból. Ezért lehet pl. Serial.print() és még egy csomó.

    A readStringUntil az a Stream osztályból öröklődik, szintén egy csomó egyébbel együtt.
    Célszerű végigbogarászni a
    HardwareSerial.h
    Stream.h
    Print.h
    fájlokat, kincseket lehet bennük találni.

    Ezért értelmesek pl. az alábbiak:
    Serial.available();
    Serial.read();
    Serial.peek();
    Serial.flush();
    Serial.setTimeout(1000);
    Serial.find("vege");
    Serial.find(10);
    Serial.find("vege",10);
    char c ;
    Serial.find(c);
    char charBuffer[20];
    Serial.readBytesUntil(c,charBuffer,10);
    uint8_t uint8_tBuffer[20];
    Serial.readBytesUntil(c,uint8_tBuffer,10);
    String str1;
    str1 = Serial.readString();
    str1 = Serial.readStringUntil(c);

Új hozzászólás Aktív témák