Cómo detener el programa Arduino?

Cómo detener el programa Arduino?
Arduino es una de las opciones viables para los estudiantes que desean aprender cómo programar los microcontroladores, ya que esta plataforma proporciona todo lo que un principiante necesita para comenzar con la programación de Arduino. Además, un principiante puede esperar algunos problemas al principio al intentar escribir un programa Arduino, así que no se preocupe, ya que una amplia gama de ayuda en línea está presente en Internet.

Sin embargo, algunos problemas, especialmente las soluciones a problemas poco comunes, son difíciles de encontrar. Entonces, si necesita detener un programa Arduino pero no puede hacerlo, esta guía será útil para usted, ya que he explicado diferentes formas de detener un programa Arduino.

¿En qué situaciones debe detenerse el programa Arduino??

La razón para detener el programa Arduino puede variar, algunos de ellos son:

  • El tablero de Arduino a veces puede atascarse en un bucle
  • Cuando se logra el valor o salida del deseo
  • Para ejecutar el código nuevamente

Métodos deteniendo un programa Arduino

Hay múltiples formas de detener un programa Arduino y depende de qué razón debía detenerse la ejecución de TI:

  • Uso de bucles o declaraciones condicionales
  • Desconectar el suministro de Arduino
  • Restablecer el arduino usando el botón de reinicio o el pin de restablecimiento
  • Usando el modo de suspensión de Arduino
  • Usar retrasos en el código Arduino

Uso de bucles o declaraciones condicionales

Los bucles y las declaraciones condicionales son una de las formas de evitar que el código Arduino se ejecute durante un período de tiempo infinito. Si desea detener el código Arduino una vez que se logra su resultado deseado, el uso de bucles como para y mientras o las declaraciones condicionales como si más y el caso de conmutación son las opciones más viables.

Desconectar el suministro de Arduino

Otra forma de detener el programa Arduino es desconectando la placa Arduino del suministro, tan pronto como se desconecte, la Junta se apagará y, por lo tanto, la ejecución de la Junta Arduino se detendrá. Sin embargo, si el código ya está cargado en la placa, nuevamente comenzará a ejecutarse una vez que la placa esté conectada con el suministro nuevamente. Este método solo se recomienda cuando la junta no responde al ejecutar el código.

Restablecer el arduino usando el botón de reinicio o el pin de restablecimiento

Todos los tableros Arduino están proporcionados con el botón de reinicio, así como con el pin de reinicio, utilizando el pin de reposo que se puede hacer un botón de reinicio externo. Entonces, para detener la ejecución del programa Arduino, presione el botón de reinicio que detendrá la ejecución durante segundos hasta que la placa se reinicie nuevamente.

Usando el modo de suspensión de Arduino

Si se requiere que el programa Arduino se ejecute solo por algún tiempo, entonces se puede usar el modo de suspensión de Arduino. Y hay un total de 6 modos de sueño disponibles para el Arduino:

  • Modo de apagado
  • Modo de espera
  • Modo inactivo
  • Modo de espera extendido
  • Modo de reducción de ruido de ADC
  • Modo ahorro de energía

Fuera los seis hay tres modos principales que se utilizan principalmente que son:

  • Modo inactivo
  • Modo de espera
  • Modo de apagado

Cómo usar el modo de suspensión de Arduino?

Para usar el modo de suspensión, hay una biblioteca específica que se puede descargar desde aquí, o puede instalarla desde el administrador de la biblioteca de Arduino IDE buscando el modo de suspensión en su barra de búsqueda.

Para ilustrar cómo usar el modo de suspensión para Arduino, he usado el modo de encendido cuyo código se proporciona a continuación:

#Include // Biblioteca para modo de suspensión
int sec = 0; /* Declarando la variable para almacenar el recuento*/
Dormir dormir;
duende larga sin firmar; /*Duración para la cual el Arduino debe estar en modo de suspensión*/
setup () void
De serie.comenzar (9600);
duendación para dormir = 5000; // Establecer la duración en milisegundos

bucle void ()
retraso (100);
De serie.imprimir ("despertar para");
De serie.imprimir (sec); / *Impresión de los segundos para los cuales el Arduino permanecerá en */
De serie.println ("Sec");
Sec ++; // Agregar los segundos
retraso (1000);
if (sec> = 10) // manteniendo el arduino encendido durante 10 segundos
Sec = 0;
De serie.imprimir ("ir a dormir para");
De serie.imprimir (dreatación de sueño); // Impresión de la duración dada del sueño para Arduino
De serie.println ("milisegundos");
retraso (100); /* Dar retraso para permitir que la serie imprima los datos antes de irse a dormir*/
dormir.pWRODDMODE (); // dando el modo de suspensión a Arduino
dormir.SleepDelay (Drury Denturation); // durmiendo el arduino durante la duración dada

En el código anterior, Arduino se ejecuta durante diez segundos y luego va al modo de potencia durante 5000 milisegundos (5 segundos) deteniendo así el código Arduino. Después de 5000 milisegundos (5 segundos), la función de bucle se ejecuta nuevamente, así es como puede detener el programa Arduino. A continuación se muestra la salida del código Arduino:

Nota: Las interrupciones también se pueden usar para que Arduino lo mueva dentro y fuera del modo de suspensión

¿Cuál es la diferencia entre el retraso y el modo de suspensión??

El retraso solo detiene la ejecución del programa Arduino durante algún tiempo, mientras que el modo de suspensión no solo detiene la ejecución del programa Arduino, sino que también conserva la potencia que es beneficiosa en caso de que las baterías se están utilizando para alimentar la tabla Arduino.

Usar retrasos en el código Arduino

Agregar retrasos en el código Arduino también puede ser la única forma de detener el código Arduino. Una vez más, el uso de este método solo detendrá la ejecución del programa Arduino por solo algunos por algún tiempo especificado. Entonces, si está buscando detener el código Arduino por un corto tiempo, entonces se puede usar este método.

Nota IMPORTANTE: Todos los métodos anteriores, excepto el uso de los bucles, las declaraciones condicionales, el modo de suspensión y la desconexión de Arduino del suministro pueden detener el programa Arduino de manera temporal.

Conclusión

A veces es posible que deba detener un código Arduino y hay múltiples formas de hacerlo. Los códigos Arduino se pueden dejar de usar bucles, declaraciones condicionales. También puede restablecer el Arduino, pero estos métodos detienen temporalmente el código Arduino. Para detener el código al ejecutarlo, necesita una biblioteca de terceros llamada sleep_n0m1.