Función Arduino DTOSTRF -Entrada tus flotadores en cuerdas

Función Arduino DTOSTRF -Entrada tus flotadores en cuerdas
Mientras se programan los tableros Arduino, tenemos que lidiar con diferentes técnicas de programación para manipular los datos en consecuencia. Para tratar con datos, necesitamos múltiples funciones que nos ayuden a escribir código para nuestro proyecto. Una de las funciones ampliamente utilizadas es dTostrf () que convierte los valores dobles y flotante en cadena con precisión definida.

Función Arduino DTOSTRF ()

La función arduino dtostrf () convierte los valores dobles y de punto flotante en una cadena. Usando esta función, se pasa un valor doble y se convierte en un valor de representación ASCII que se almacenará dentro de la cadena. La persona que llama es responsable de proporcionar suficiente almacenamiento dentro de la cadena.

DTOSTRF () La función ayuda al mostrar un texto en una pantalla de matriz LCD usando Arduino. Una vez que los datos se conviertan en una cadena, actuará como un texto que se puede mostrar en cualquier lugar, puede ser una pantalla OLED o cualquier otro módulo de visualización.

Veamos la sintaxis que sigue.

Sintaxis

La siguiente es la sintaxis de la función DTOSTRF ():

DTOSTRF (FloatValue, MinStringWidth, NumafterDecimal, Charbuf_to_store_String);

Parámetros

Esta función toma cuatro parámetros para convertir el doble en un valor ASCII almacenado dentro de la cadena:

1. Valor de flotación: Es el primer parámetro que toma el valor flotante que queremos convertir en cadena.

2. ancho de minstring: Este es el segundo parámetro que define el ancho de campo mínimo de la cadena de salida. Si establecemos un ancho mínimo de cadena menos que los valores de punto flotante de conversión, los dígitos adicionales aún se mostrarán y para contar el signo decimal y negativo también se incluye como espacios. Por otro lado, si el ancho definido para la cadena es más que convertir el valor, los valores adicionales se llenarán con espacios en blanco.

3. numafterdecimal: El tercer parámetro es una precisión que describe el número de dígitos después del punto decimal. Redondea los dígitos adicionales al número especificado en precisión después del punto decimal.

4. Charbuffer: El argumento final es donde se almacenará la cadena. Este es un tipo de matriz de caracteres que tiene un tamaño definido. Al considerar el letrero, asegúrese de considerar:

  • Debe ser lo suficientemente grande como para almacenar el valor.
  • Considerando el tamaño debe recordar espacio para decimal "." y posible negativo "-" firmar.
  • 1 para el personaje de terminación nula "\ 0".

El siguiente es el tipo de datos que toman estos cuatro parámetros:

  • El primer parámetro es una variable que es de tipo doble.
  • El segundo parámetro es de tipo carbonizarse que especifica el ancho de la cadena de salida.
  • El tercer parámetro es de tipo carbonizarse que especifica el número de dígitos Después del lugar decimal.
  • El cuarto parámetro es una variable de tipo carbonizarse cual tiendas valores convertidos.

Devolver datos

Se devuelve un puntero a la cadena convertida usando DTOSTRF () función.

Código de ejemplo

fuente doble = 789.127; /*La fuente como una variable doble se inicializa*/
destino de char [8]; /*Tamaño de matriz de destino definido*/
setup () void
De serie.comenzar (9600); /*Comienza la comunicación en serie*/
dTostrf (fuente, 5,2, destino); /*Doble convertido a String*/
De serie.println (destino); /*La cadena de destino está impresa*/

bucle void ()

Aquí en el código anterior, se define una variable de fuente de punto doble que tiene valor de "789.127 " A continuación, una matriz de búfer de destino se inicializa con un tamaño de "8". En la parte de configuración utilizando la fuente de función dtostrf (), el valor de punto doble se convertirá en una cadena que tiene un ancho mínimo de 5 y una precisión decimal de 2 dígitos después del lugar decimal. Al final del código, imprimimos el resultado en el monitor en serie.

Producción

El terminal de salida nos muestra una cadena que se redondea a 2 decimales.

Conclusión

Para convertir el valor doble en una cadena, una función de programación AVR Arduino se usa conocida como DTOSTRF (). Esta función toma cuatro parámetros: una fuente que es un valor de punto flotante que se convertirá en una cadena de destino que ha definido el valor de ancho mínimo y para la precisión se define un parámetro que redondea a valores decimales específicos. Este artículo ayudará a comprender todo esto de una mejor manera.