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:
El siguiente es el tipo de datos que toman estos cuatro parámetros:
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*/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.