постоянно меняющееся значение параметра

У меня есть функция проверки, которая принимает логическое значение в качестве аргумента, использует значение логического и затем изменяет его. Я всегда передаю эту функцию глобальной переменной, например:

check(4, some_global_boolean, 'a');

и я хочу, чтобы изменение в переменной оставалось после вызова «проверки». Прямо сейчас изменение не выходит за рамки этого вызова функции. Как мне это сделать?

boolean check(int key, boolean prev_key_high, char c){

 if (key == LOW) {
    if ( prev_key_high){
      prev_key_high = false;
      Serial.println(c);
      return true;
}
  }

  else {
    prev_key_high = true;
    return false;
  }
}

Ответы на вопрос(6)

Ваш ответ на вопрос