Библиотека работы arduino с матричной клавиатурой
Подключение библиотеки:
#include <iarduino_KB.h> iarduino_KB KB(вывод 1 [,вывод 2 ... [, вывод N]]); // Указываются № выводов arduino подключенных к выводам клавиатуры
В библиотеке реализованы 2 функции:
Функция begin
Назначение: Инициализация клавиатуры
Синтаксис: begin(параметр);
Параметры:
Возвращаемые значения: Нет
Примечание: Вызывается 1 раз в начале кода.
Функция check
Назначение: Определение нажимаемой/отпускаемой/удерживаемой кнопки
Синтаксис: check([ параметр ]);
Параметры:
Возвращаемые значения: bool true - есть нажимаемая/отпускаемая/удерживаемая кнопка, или false - нет нажимаемых/отпускаемых/удерживаемых кнопок
Примечание: Вызов функции без параметра, равносилен вызову функции я параметром KEY_PRESS
Переменные:
Указанные переменные доступны для чтения после возврата true функцией check
getNum - значение кнопки в 16ричной системе счисления: 0=0, 1=1, 2=2, 3=3, 4=4, 5=5, 6=6, 7=7, 8=8, 9=9, A=10, B=11, C=12, D=13, *=E=14, #=F=15.
getChar - символ указанный на кнопке в виде типа char. если кнопка не имеет обозначений, то выводит символы "0"-"9", "A"-"Z" (слева на право, сверху вниз)
Пример:
#include <iarduino_KB.h> // Подключаем библиотеку для работы с матричной клавиатурой iarduino_KB KB(9,8,7,6,5,4,3,2); // Объявляем переменную для работы с матричной клавиатурой, // указывая номера arduino подключенные к шлейфу клавиатуры, начиная с первого вывода шлейфа. // Количество параметров соответствует количеству подключенных выводов клавиатуры void setup(){ Serial.begin(9600); // инициируем подключение к COM-порту на скорости 9600 бот KB.begin(KB1); // указываем тип клавиатуры } void loop(){ if(KB.check(KEY_DOWN )){ // если нажимается кнопка, то ... // if(KB.check(KEY_UP )){ // если отпускается кнопка, то ... // if(KB.check(KEY_PRESS)){ // если удерживается кнопка, то ... Serial.print(KB.getNum); // отправляем символ кнопки в последовательный порт (для вывода цифры кнопки используйте KB.getNum ) Serial.print(" = \""); Serial.print(KB.getChar); // отправляем символ кнопки в последовательный порт Serial.println("\""); } }