Sensor MQ. Quiero un unico print en pantalla tanto cuando detecto y cuando no.

Hola a todos, Tengo el siguiente programa que saque de internet para el sensor MQ2 para usar con los pines digitales. Lo que hace es que siempre que esta en 1 imprime una y otra vez "Sin presencia gas toxico" y cuando esta en 0 imprime una y otra vez "Con presencia gas toxico". Lo que yo quiero es que me haga una unica vez los print. ¿Como puedo hacerlo? Gracias.

Aqui el programa:

boolean estado_mq = digitalRead(pin_mq); //En la variable "estado_mq" se guarda el valor de la salida 
                                         //digital del sensor MQ2 (conectada al pin 10 de mi arduino nano)
                                                    
                                 
  if(estado_mq) //si la salida del sensor es 1
  {
    Serial.println("Sin presencia gas toxico");

  }
  
  else //si la salida del sensor es 0
  {
    Serial.println("Con presencia gas toxico");

  }

Hola, antes del digitalRead, asigna estado_mq a otra variable estado_anterior, entonces se vuelve al ejecutar la lectura y los if's que tienes puestos los metes dentro de un if(estado_mq != estado_anterior)...es decir, lees el sensor, imprimes en pantalla y mientras el estado no cambie no vuelves a imprimir nada.

//estas variables las declaras al comienzo del sketch y las inicias a true, pues en principio no habrá gas 
//toxico
estado_anterior = estado_mq;

estado_mq = digitalRead(pin_mq); //En la variable "estado_mq" se guarda el valor de la salida 
                                         //digital del sensor MQ2 (conectada al pin 10 de mi arduino nano)
                                                    
  
if(estado_mq!= estado_anterior) { //mientras el estado no cambie no imprimimos nada
                               
  if(estado_mq) //si la salida del sensor es 1
  {
    Serial.println("Sin presencia gas toxico");

  }
  
  else //si la salida del sensor es 0
  {
    Serial.println("Con presencia gas toxico");

  }
}

Me ha funcionado Muchas gracias!