Why does CompareTo work in Boolean values? (Arduino)

0

I have this program that I found online and I'm trying to understand it, I do not know why the compareTo works in this code since it handles it as a value booleano and even where it is used to compare strings.

This is the code:

  int pulsador = 0;

  int pulsadorAnt = 0;

  int estado = 0;

  int x = 0;

  int concurrencia = 0;

  boolean compareTo = false;

  void setup(){

    pinMode(2, OUTPUT);
    pinMode(3, OUTPUT);
    pinMode(4, INPUT);

  }
  void loop(){

    while(true){

      pulsador = digitalRead(4);


      if (pulsador == HIGH && pulsadorAnt == LOW) {
        estado = estado + 1;                            //Condición que verifica si el usuario ha presionado el botón
        delay(10);

      }

      x = concurrencia % 2;


      if(estado != 0 && x == 0 && concurrencia == 80){  

        compareTo = true;                                 //Condición que da luz verde a la condición de las variables
        Serial.println(estado);
        break;

      } else (estado != 0); {
         delay(20);
        concurrencia++;   
      }
      pulsadorAnt = pulsador;       



    }


    if(compareTo == true){                                   //Aquí valora la condición si se cumplió una anterior que el "status" sea diferente de 0

      switch (estado)
      {
        case 1:
          digitalWrite(2, HIGH);
          digitalWrite(3, LOW);
          delay(3000);
          estado = 0;
          compareTo = false; 
          concurrencia = 0;
          break;
        case 2:
          digitalWrite(2, LOW);
          digitalWrite(3, HIGH);
          delay(3000);
          estado = 0;
          compareTo = false; 
          concurrencia = 0;
          break;
        default:
          estado = 0;
          digitalWrite(3, LOW);
          digitalWrite(2, LOW);
          delay(3000);
          compareTo = false;
          concurrencia = 0;
          break;
      }

    }
  }
    
asked by Edwin Contreras 01.05.2018 в 00:59
source

0 answers