Tutorial del monitor serial Arduino

En este tutorial, seguiré los pasos sobre cómo configurar el monitor serial Arduino para que pueda depurar e interactuar con un programa que se ejecuta en Arduino.

Este tutorial es bastante simple, pero puede ser un poco confuso al principio, especialmente si eres nuevo en programación y Arduino.

Como parte de este tutorial, crearemos un circuito simple para demostrar cómo puede recibir y enviar comandos a través del monitor en serie.

Aprender a usar el monitor en serie es importante, ya que necesitará usarlo para depurar su código y circuitos.

Equipo

El equipo que utilizo en este sencillo monitor serie Arduino se enumera a continuación.

Arduino Uno

Resistencia de 100 ohmios

LED rojo

Tablero de circuitos

Alambre de tablero

Puede aprender todo fácilmente sin usar el circuito de ejemplo, pero creo que hacerlo es a menudo la mejor manera de comprender cómo funcionan las cosas.

Video

Si desea ver mi video sobre el proceso de configuración del monitor en serie, asegúrese de verlo a continuación.

Paso por todos los pasos para configurar el circuito, el código y también poder abrir y usar la ventana del monitor correctamente.

Puede consultar la guía escrita completa justo debajo del video.

¿Adblock bloquea el video? Apóyenos suscribiéndose a nuestro servicio sin publicidad.

El circuito para el ejemplo

El circuito que estaremos construyendo para este tutorial es super sencillo y constará de un LED que podremos controlar desde el monitor serie. Esto está simplemente ahí para mostrar tanto el envío como la recepción de datos a través del monitor.

Para configurar el circuito, simplemente haga lo siguiente. Si tiene problemas, consulte el diagrama del circuito.

1. Simplemente conecte el cable positivo del LED rojo hasta el pin 2.

2. Luego, conecte una resistencia de 100 ohmios desde el cable negativo al riel de tierra en el Arduino.

El código del monitor serial Arduino

El código que usaremos es simple, su propósito es mostrar los conceptos básicos de cómo puede usar el monitor Arduino Serial para ver y enviar datos.

Explicaré cada una de las líneas de código que estamos usando y cómo puedes usarlo en tu próximo proyecto para depurar o interactuar con Arduino.

Si solo desea descargar el código de inmediato, puede descargarlo desde nuestro espejo de descarga o en nuestro GitHub.

Para comenzar, inicializamos una variable entera para nuestro LED, este es el número de pin que conduce al LED. También inicializamos una variable llamada count, esta almacenará la cantidad de tiempo que el LED está encendido o apagado.

int redLedPin = 2; int count = 0;

En la función de configuración, primero configuramos el LED rojo para que actúe como una salida para poder apagarlo y encenderlo.

A continuación llamamos al serial.begin función con un valor de parámetro de 9600. El valor que estamos configurando se conoce como velocidad de bits por segundo (baudios).

La velocidad en baudios se puede establecer en bastantes velocidades diferentes, pero usaremos 9600 ya que parece ser la predeterminada y funcionará con la mayoría de los dispositivos sin problemas. Es muy importante llamar a esta función. De lo contrario, no podrá comunicarse con Arduino.

A continuación, esperamos a que la interfaz en serie se inicialice y se conecte a la computadora. Luego llamamos a una función llamada Serial.println (). Esta función nos permite imprimir una línea al monitor serial Arduino. Notará que esto imprimirá el texto y luego comenzará en una nueva línea para la siguiente entrada o salida.

void setup() {   pinMode(redLedPin, OUTPUT);   Serial.begin(9600);   while (! Serial);   Serial.println("Enter Y to turn on the LED:"); }

Por último, tenemos el ciclo, esto se repetirá continuamente hasta que se cargue un nuevo programa o se apague el Arduino.

Dentro de la función de bucle, tenemos una instrucción if que está verificando si hay datos esperando en el búfer serial; Serie disponible. En términos simples, estamos verificando si le hemos enviado un comando. Si hay datos, ingresamos la declaración if.

A continuación, creamos una variable llamada ch y llamamos a Serial.read () que nos dará los datos que están esperando actualmente en el búfer serial. Tenga en cuenta que esta función solo nos dará el primer byte de los datos que ingresan al Arduino. Si desea obtener una cadena completa, deberá usar algo como Serial.readString.

Si el byte de datos es y o n, ingresamos la instrucción if relevante. Aquí notará que cambiamos la salida del pin LED alto o bajo. Luego imprimimos una serie de declaraciones.

Hay dos cosas que debes notar aquí. Serial.println imprimirá los datos e irá a una nueva línea, mientras que Serial.print imprimirá los datos pero permanecerá en la misma línea cuando se imprima.

También notará que puede imprimir variables como el ejemplo de recuento en el código a continuación. Hacer esto le permitirá depurar valores cuando se trata del procesamiento de datos.

Por último, me demoro un segundo y sumo 1 para contar. Este código solo le muestra un ejemplo de cómo agregar datos a una variable y luego imprimirlos a través de la salida en serie.

void loop(){   if (Serial.available()){     char ch = Serial.read();     if (ch == 'y' ||	ch == 'Y'){       digitalWrite(redLedPin, HIGH);       Serial.println("You have turned on the LED!!");       Serial.print("The LED was off for ");       Serial.print(count);       Serial.println(" seconds");       Serial.println("If you want to switch it off, simply enter N or n!");       count = 0;     }     if (ch == 'n' ||	ch == 'N'){       digitalWrite(redLedPin, LOW);       Serial.println("You have turned off the LED!!");       Serial.print("The LED was on for ");       Serial.print(count);       Serial.println(" seconds");       Serial.println("If you want to switch it on, simply enter Y or y!");       count = 0;     }   }     delay(1000);     count += 1; }

Una vez que haya terminado, debería poder implementar el código en Arduino. En la siguiente parte, le mostraré cómo conectarse, recibir y enviar datos al Arduino.

Conexión, recepción y envío de datos al Arduino

Ahora que el código se ha cargado en Arduino, necesitaremos abrir el monitor serial de Arduino. Esto es bastante fácil y solo hay algunas opciones que tendré que explicar.

Para abrir el monitor en serie, vaya a herramientas y luego seleccione el monitor en serie. Alternativamente, CTRL + SHIFT + M también traerá la misma ventana. Asegúrese de estar conectado al Arduino, de lo contrario, la ventana no se abrirá.

Ahora debería tener una ventana abierta similar a la de abajo.

En la parte superior de esta pantalla, debería haber un área de entrada. Aquí es donde puede escribir y enviar un texto al Arduino. Para enviar el texto que ha escrito simplemente presione el botón enviar.

Debajo de esta se encuentra la ventana de salida, todos los datos que se nos envían se mostrarán aquí. Si está utilizando el código de ejemplo anterior, podrá ver el texto que está en las funciones Serial.println.

En la parte inferior de la pantalla, tenemos tres opciones diferentes.

  • El primero se explica por sí mismo, el desplazamiento automático deshabilitará y habilitará el desplazamiento automático del cuadro de salida.
  • En segundo lugar, tenemos la opción de finalización de línea. Puede configurar el monitor para que agregue automáticamente una línea que finaliza después de lo que ingresa / envía al Arduino.
  • En tercer lugar, tenemos la velocidad en baudios que mencioné anteriormente. Asegúrese de que esto coincida con lo que ha configurado en el código. Si es diferente al texto de salida, aparecerá como un galimatías. Si está recibiendo tonterías, entonces esta es una causa probable de esto.

Esto es básicamente todo lo que necesita saber para comprender los conceptos básicos del monitor en serie. Hay algunas cosas más sobre las que puede aprender, como el uso de cadenas a través de la interfaz en serie y más, pero esto probablemente sea todo lo que necesite saber por ahora.

Espero que ahora comprenda cómo usar el monitor serial Arduino correctamente y lo ayudará con futuros proyectos de Arduino. Si desea agregar algo a este tutorial, asegúrese de hacérnoslo saber en nuestro foro.