Hirdetés

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

  • JozsBiker

    aktív tag

    válasz DeniL #1867 üzenetére

    Szerintem is igaza van Danex -nek, a feladat leírása alapján tipikusan while -lal kellene operálnod. 6 db while ciklus és kész. Az első addig fut, amíg az első tag -et meg nem kapja. Ha nem azt kapja akkor hibaüzenet. Ha megkapta megy a második while -ra ami a második tag -et várja, és így tovább.
    Abban is igaza van Danex -nek, hogy így strukturálatlanul képtelenség áttekinteni a kódot.

    Valahogy így:

    idnumber = ""; // Adunk egy indulóértéket ami biztosan nem egyezik egyik UID -vel sem

    while ( idnumber != myUID1 ) // Amíg nincs egyezés nem lép ki a ciklusból
    {
    NfcTag tag = nfc.read();
    idnumber = tag.getUidString();
    if ( idnumber != myUID1 ) Serial.println("Not correct tag!");
    }
    Serial.println("This is the first"); // Megvan az első, hiszen elhagyta a ciklust
    delay(4000);

    while ( idnumber != myUID2 )
    {
    NfcTag tag = nfc.read();
    idnumber = tag.getUidString();
    if ( idnumber != myUID2 ) Serial.println("Not correct tag!");
    }
    Serial.println("This is the second"); // Megvan a második, hiszen elhagyta a ciklust
    delay(4000);

    stb.

    De biztos van egyszerűbb megoldás is :-)

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