Diferencia entre revisiones de «Keypad»
De ArduWiki
(→Parámetros) |
|||
(No se muestran 7 ediciones intermedias del mismo usuario) | |||
Línea 7: | Línea 7: | ||
<pre> | <pre> | ||
#include <Keypad.h> | #include <Keypad.h> | ||
+ | Keypad teclado = Keypad(makeKeymap(keys), rowPins, colPins, filas, columnas); | ||
</pre> | </pre> | ||
== Parámetros == | == Parámetros == | ||
+ | ;keys:Matriz[filas][columnas] que contiene los caracteres representados | ||
+ | ;rowPins:Pines digitales de filas | ||
+ | ;colPins:Pines digitales de columnas | ||
+ | ;filas:Numero de filas | ||
+ | ;columnas:Numero de columnas | ||
== Métodos == | == Métodos == | ||
Línea 18: | Línea 24: | ||
! Método !! Descripción | ! Método !! Descripción | ||
|- | |- | ||
− | | getKey() || | + | | getKey() || Retorna el valor ASCII de una tecla presionada o liberada en un teclado USB conectado. |
|- | |- | ||
| getKeys() || | | getKeys() || | ||
Línea 68: | Línea 74: | ||
byte colPins[COLS] = {8, 7, 6}; //Pines para columnas | byte colPins[COLS] = {8, 7, 6}; //Pines para columnas | ||
− | Keypad | + | Keypad teclado = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS); |
void setup(){ | void setup(){ | ||
Línea 75: | Línea 81: | ||
void loop(){ | void loop(){ | ||
− | char key = | + | char key = teclado.getKey(); |
if (key){ | if (key){ | ||
Serial.println(key); | Serial.println(key); | ||
Línea 87: | Línea 93: | ||
== Referencias == | == Referencias == | ||
* [http://playground.arduino.cc/Code/Keypad Playground] | * [http://playground.arduino.cc/Code/Keypad Playground] | ||
− | * [https://www.luisllamas.es/arduino-teclado-matricial/ | + | * [https://www.luisllamas.es/arduino-teclado-matricial Teclado matricial] - Luis Llamas |
+ | * [https://www.prometec.net/teclados-matriciales/ Teclado matricial] - Prometec | ||
[[Category:Librerias]] | [[Category:Librerias]] | ||
[[Category:Libreria Keypad]] | [[Category:Libreria Keypad]] |
Revisión actual del 17:21 20 mar 2020
Contenido
Descripción
Un teclado matricial es un dispositivo que agrupa en filas y columnas (de alli el nombre matricial, 3x3, 3x4, 4x4) varios pulsadores y permite controlarlos usando un número de pines inferior al que necesitaríamos al usarlos de forma individual.
Tip: Al ser simples pulsadores actuaremos igual que con ellos, poniendo cada linea con un pull-up.
Sintaxis
#include <Keypad.h> Keypad teclado = Keypad(makeKeymap(keys), rowPins, colPins, filas, columnas);
Parámetros
- keys
- Matriz[filas][columnas] que contiene los caracteres representados
- rowPins
- Pines digitales de filas
- colPins
- Pines digitales de columnas
- filas
- Numero de filas
- columnas
- Numero de columnas
Métodos
Método | Descripción |
---|---|
getKey() | Retorna el valor ASCII de una tecla presionada o liberada en un teclado USB conectado. |
getKeys() | |
getState() | |
isPressed() | |
addEventListener() | |
keyStateChanged() | |
findKeyInList() | |
bitMap() | |
pin_mode() | |
pin_read() | |
pin_write | |
findKeyInList() | |
setDebounceTime() | |
setHoldTime() | |
waitForKey() |
Comentarios
Advertencias
Ejemplo 1
#include <Keypad.h>
const byte ROWS = 4; //filas
const byte COLS = 3; //columnas
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS] = {5, 4, 3, 2}; //Pines para filas
byte colPins[COLS] = {8, 7, 6}; //Pines para columnas
Keypad teclado = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
}
void loop(){
char key = teclado.getKey();
if (key){
Serial.println(key);
}
}
Vea también
Referencias
- Playground
- Teclado matricial - Luis Llamas
- Teclado matricial - Prometec