Menu
CoddyTech

Valores de retorno

Parte de la sección Entradas del Journey de Arduino de Coddy. Lección 21 de 22.

Una función también puede devolver un valor. Escribe el tipo del valor en lugar de void y termina con return y el valor:

int readPercent() {
  int reading = analogRead(A0);
  return map(reading, 0, 1023, 0, 100);
}

La llamada representa entonces ese valor, como hace analogRead(). Puedes almacenarlo, imprimirlo o compararlo:

int percent = readPercent();
if (readPercent() > 50) {
  // ...
}

return también termina la función inmediatamente: las líneas que vienen después no se ejecutan. Las variables creadas dentro de una función, como reading aquí, solo existen mientras esta se ejecuta; el valor devuelto es la forma de sacar el resultado.

challenge icon

Desafío

Fácil

El mando está en A0 y el LED en el pin 13:

  • escribe int readPercent(), que lea A0 y devuelva el valor mapeado de 0 a 100
  • en loop(), guarda readPercent() en una variable e imprímela
  • enciende el LED cuando el porcentaje sea superior a 50; de lo contrario, apágalo; espera 100 ms

Pulsa Run, gira el mando y después pulsa Check.

Pruébalo tú mismo

const int ledPin = 13;

// escribe int readPercent() aquí

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // int percent = readPercent();
  // imprime su valor, enciende el LED si supera 50, espera 100 ms
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Entradas

Practica por tu cuenta: Playground de Arduino