Diferencia entre revisiones de «Keypad»

De ArduWiki
Saltar a: navegación, buscar
(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 = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
+
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 = keypad.getKey();  
+
   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/#targetText=%C2%BFQu%C3%A9%20es%20un%20teclado%20matricial,o%20un%20procesador%20como%20Arduino. Teclado matricial] - Luis Llamas
+
* [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

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étodos disponibles librería Keypad.h
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