Cómo usar la función MEMCPY en Arduino

Cómo usar la función MEMCPY en Arduino
Los tableros Arduino se pueden programar usando IDE. La programación de Arduino se basa en versiones simplificadas de C y C++. Arduino hereda muchas de sus técnicas de programación de estos dos idiomas. Muchas de las funciones utilizadas en Arduino son las mismas que en el idioma C. A veces necesitamos optimizar nuestros tableros Arduino utilizando técnicas de programación, por lo que hay múltiples funciones que hacen que el código sea más simplificado y más fácil de leer, lo que en general mejora la eficiencia de Arduino.

¿Qué es memcpy () en Arduino?

MEMCPY () es una función utilizada en la programación de Arduino que puede copiar un bloque de memoria desde la ubicación de origen hasta el bloque de memoria del destino. Puede copiar "norte" Caracteres desde la memoria de origen hasta la memoria de destino.

Aquí discutiremos cómo se usa memcpy () en la programación Arduino. La función memcpy () se puede representar en la siguiente sintaxis:

MEMPCPY (destino, fuente, strlen (fuente));

parámetros memcpy ()

La función memcpy () tiene tres parámetros:

1: destino

Los destinos indican el bloque de memoria donde se copiará la memoria de origen. Esto muestra un puntero hacia la matriz de destino donde se copiará la matriz de origen.

2: fuente

Este es el punto de origen desde el cual se copiará el bloque de memoria de la matriz. Este bloque de memoria de matriz se pegará a la ubicación de destino.

3: tamaño/longitud

Esto indica el tamaño del bloque de memoria del que vamos a copiar fuente a destino. Es strlen () tipo.

Cómo usar memcpy () en Arduino

En Arduino usamos memcpy () para copiar datos de origen a destino con un número especificado de bytes. Se usa para copiar bloques de memoria de una ubicación a otra.

Para obtener más comprensión sobre la función memcpy (), tomaremos un boceto de Arduino e intentaremos copiar una matriz de un destino de uno a otro.

Configuración vacía ()

De serie.comenzar (115200);
Fuente de char [14] = "Linuxhint.com "; // Esta es una matriz de origen
destino de char [14];
strcpy (destino, "sitio web"); // Esta es una matriz de destino
De serie.imprimir ("antes de memcpy () destino =");
De serie.println (destino); // Destino antes de Memcpy ()
memcpy (destino, fuente, strlen (fuente) +1); // función memcpy ()
De serie.imprimir ("después de memcpy () destino =");
De serie.println (destino); // matriz de destino después de memcpy ()

bucle vacío ()

En el ejemplo anterior hemos declarado una matriz de dos caracteres fuente y destino. El tamaño de la matriz de caracteres de origen es 14 y el tamaño de la matriz de char de destino es 8.

En la línea 7 hemos imprimido la salida de la matriz de destino en el monitor en serie como "Antes del destino Memcpy ()".

Después de eso, hemos ejecutado la función MemCPy () que copiará y reemplazará a la matriz de origen Char "Linuxhint.com " a nuestra matriz de destino que es "Sitio web".

En la línea 10 hemos imprimido la salida de la matriz de destino después de aplicar la función MemCPy () en el monitor en serie. La representación pictórica de la función MemCPy () se puede dar como se muestra a continuación:

La salida en el monitor serial se muestra en la figura a continuación:


Conclusión

En este artículo, hemos aprendido cómo funciona la función memcpy () en la programación Arduino. La función memcpy () en Arduino puede copiar cualquier matriz desde el bloque de memoria de origen hasta el bloque de destino. Usando esta función, puede optimizar el rendimiento general del código.