Arduino - Funciones

Las funciones permiten estructurar los programas en segmentos de código para realizar tareas individuales. El caso típico para crear una función es cuando se necesita realizar la misma acción varias veces en un programa.

Estandarizar fragmentos de código en funciones tiene varias ventajas:

  • Las funciones ayudan al programador a mantenerse organizado. A menudo, esto ayuda a conceptualizar el programa.

  • Las funciones codifican una acción en un lugar para que la función solo tenga que pensarse y depurarse una vez.

  • Esto también reduce las posibilidades de errores en la modificación, si es necesario cambiar el código.

  • Las funciones hacen que todo el boceto sea más pequeño y compacto porque las secciones de código se reutilizan muchas veces.

  • Facilitan la reutilización del código en otros programas al hacerlo modular, y el uso de funciones a menudo hace que el código sea más legible.

Hay dos funciones necesarias en un boceto de Arduino o un programa, es decir, setup () y loop (). Otras funciones deben crearse fuera de los corchetes de estas dos funciones.

La sintaxis más común para definir una función es:

Declaración de función

Una función se declara fuera de cualquier otra función, por encima o por debajo de la función de bucle.

Podemos declarar la función de dos formas diferentes:

La primera forma es simplemente escribir la parte de la función llamada a function prototype encima de la función de bucle, que consta de:

  • Tipo de retorno de función
  • Nombre de la función
  • Tipo de argumento de función, no es necesario escribir el nombre del argumento

El prototipo de función debe ir seguido de un punto y coma (;).

El siguiente ejemplo muestra la demostración de la declaración de función utilizando el primer método.

Ejemplo

int sum_func (int x, int y) // function declaration {
   int z = 0;
   z = x+y ;
   return z; // return the value
}

void setup () {
   Statements // group of statements
}

Void loop () {
   int result = 0 ;
   result = Sum_func (5,6) ; // function call
}

La segunda parte, que se denomina definición o declaración de función, debe declararse debajo de la función de bucle, que consta de:

  • Tipo de retorno de función
  • Nombre de la función
  • Tipo de argumento de función, aquí debe agregar el nombre del argumento
  • El cuerpo de la función (declaraciones dentro de la función que se ejecutan cuando se llama a la función)

El siguiente ejemplo demuestra la declaración de función utilizando el segundo método.

Ejemplo

int sum_func (int , int ) ; // function prototype

void setup () {
   Statements // group of statements
}

Void loop () {
   int result = 0 ;
   result = Sum_func (5,6) ; // function call
}

int sum_func (int x, int y) // function declaration {
   int z = 0;
   z = x+y ;
   return z; // return the value
}

El segundo método simplemente declara la función por encima de la función de bucle.