Переключить чехол, возврат, возврат не печатается

arduino-mega keypad

Я пытаюсь получить значение нажатой клавиши и настроить его так, чтобы оно возвращало значение для использования в цикле. В приведенном ниже коде Print(t) ничего не показывает

#include <Keypad.h>

const byte ROWS = 4; //четыре строки
const byte COLS = 4; //четыре столбца
char hexaKeys[ROWS][COLS] = {
    {'1', '2', '3', 'A'},
    {'4', '5', '6', 'B'},
    {'7', '8', '9', 'C'},
    {'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; 
byte colPins[ROWS] = {5, 4, 3, 2};    
Keypad customKeypad = Keypad(makeKeymap(hexaKeys),rowPins,colPins,ROWS,COLS;                                  

void setup() {
    Serial.begin(9600);
}

void loop()
{
    int t; 
    switch (customKeypad.getKey())
    {
    case 'A':
        t = 8;
        break;
    case '2':
        t = 9;
        break;
    }
    return t;
    Serial.print(t);
}

, 👍0

Обсуждение

Покажите пожалуйста вашу проводку, @chrisl


1 ответ


3

Вы неправильно понимаете использование return. Функция цикла объявляется недействительной. Это означает, что он ничего не возвращает. Если вы просто полностью удалите этот оператор возврата, ваш код будет делать то, что вы хотите.

Возврат останавливает цикл. Он отбрасывает значение, поскольку цикл определен как возвращающий void, а выполнение кода никогда не достигает оператора печати. Писать что-либо в функции после оператора return бесполезно.

,