Serial.print() vs Serial.println() en Arduino

Serial Print Vs Serial Println En Arduino



El Arduino es una placa de microcontrolador popular que se usa comúnmente para proyectos de bricolaje, robótica y dispositivos IoT. Una de las características esenciales de Arduino es el intercambio de datos con las computadoras a través de la comunicación en serie.

Serial.imprimir() y Serial.println() son dos de los comandos más utilizados para la comunicación en serie en Arduino. Este artículo cubrirá las diferencias entre Serial.imprimir() y Serial.println() y cómo afectan su proyecto Arduino.

Tabla de contenido







¿Qué es la comunicación en serie?

Antes de profundizar en las diferencias entre Serial.imprimir() y Serial.println() , primero entendamos qué comunicación serial es. Comunicación serial es el proceso de transmisión y recepción de datos. El uso de este Arduino puede transferir un bit de datos a la vez, con el protocolo de comunicación en serie. En Arduino, usamos el objeto Serial para intercambiar datos con una PC usando un puerto USB.



Comunicación serial es esencial para depurar y monitorear el comportamiento de un proyecto Arduino. Puede usarlo para imprimir lecturas de sensores, depurar código o mostrar mensajes en la pantalla de una computadora.



Serial.imprimir()

Serial.imprimir() es una función que envía datos al puerto serie en un flujo continuo. Le permite enviar datos como una cadena, un carácter o un valor numérico. Por ejemplo, el código dado envía una cadena ' ¡Hola Mundo! ” al puerto serie de Arduino:





Serial.print ( '¡Hola Mundo!' ) ;

Serial.imprimir() no agrega saltos de línea ni retornos de carro al final de los datos, por lo que los datos se imprimen continuamente en la misma línea.

Serial.println()

Serial.println() es parecido a Serial.imprimir() , pero agrega un carácter de salto de línea (\n) al final de los datos. Esto nos muestra que cada vez Serial.println() se llama a la función, la próxima declaración de impresión comenzará en una nueva línea. Por ejemplo, el código dado envía la cadena ' ¡Hola Mundo! ” y agrega un salto de línea:



Serial.println ( '¡Hola Mundo!' ) ;

Esto imprimirá “ ¡Hola Mundo! ” en el terminal serie de Arduino.

Diferencia entre Serial.print() y Serial.println()

La principal diferencia entre Serial.imprimir() y Serial.println() es eso Serial.imprimir() envía datos en un flujo continuo, mientras que Serial.println() envía datos con un salto de línea al final.

Ahora cubriremos el código de ejemplo que explica el funcionamiento de ambas funciones.

Serial.print() Ejemplo

A continuación se muestra el código que explica el uso de Serial.imprimir() :

configuración nula ( ) {
Serial.begin ( 9600 ) ; // inicializar la comunicación en serie en 9600 tasa de baudios
}

bucle vacío ( ) {
valor aleatorio int = aleatorio ( 0 , 1023 ) ; // generar un valor aleatorio entre 0 y 1023

Serial.print ( 'Valor aleatorio: ' ) ; // imprimir la etiqueta
Serial.print ( valor aleatorio ) ; // imprime el valor aleatorio en una nueva línea

demora ( 2000 ) ; // esperar para 500 milisegundos antes de volver a imprimir
}

Este código inicializa la comunicación serial con una tasa de baudios de 9600 en la función setup(). La función loop() luego genera un valor entero aleatorio entre 0 y 1023 usando la función random() y lo almacena en el nombre de la variable valor aleatorio .

El Serial.imprimir() La función se utiliza entonces para imprimir la etiqueta “ Valor aleatorio: ” al monitor serie, seguido del valor aleatorio real, que se imprime en la misma línea sin un carácter de nueva línea usando Serial.imprimir() .

El demora() La función se utiliza para pausar la ejecución del bucle durante 2000 milisegundos (2 segundos).

Producción
En la salida, podemos ver que todos los valores se imprimen en una sola línea sin ningún salto de línea.

Serial.println() Ejemplo

El código dado demuestra el uso de la Serial.println() Función en Arduino.

configuración nula ( ) {
Serial.begin ( 9600 ) ; // inicializar la comunicación en serie en 9600 tasa de baudios
}

bucle vacío ( ) {
valor aleatorio int = aleatorio ( 0 , 1023 ) ; // generar un valor aleatorio entre 0 y 1023

Serial.print ( 'Valor aleatorio: ' ) ; // imprimir la etiqueta
Serial.println ( valor aleatorio ) ; // imprime el valor aleatorio en una nueva línea

demora ( 2000 ) ; // esperar para 500 milisegundos antes de volver a imprimir
}

El código para Serial.println() es similar al anterior Serial.imprimir() código. La única diferencia aquí son los valores aleatorios que se generan e imprimen con un salto de línea que falta en el Serial.imprimir() código.

Producción
Todos los valores se imprimen en una nueva línea como hemos usado Serial.imprimir() en lugar de Serial.println() :

Conclusión

Comunicación serial es un aspecto esencial de la programación de Arduino. El Serial.imprimir() y Serial.println() Las funciones son útiles para mostrar datos en el terminal Arduino Serial. Comprender la diferencia entre ellos y usarlos adecuadamente puede ayudarlo a depurar su código y comunicarse con dispositivos externos.