Paso 3: El código:
Código es bastante simple por lo que también es una tarea rápida una vez que se descargan las bibliotecas adecuadas.
/*
Teclado de Control de un módulo de WTV020-SD - 16P jugar voces de una placa de Arduino.
Creado por Diego J. Arevalo, 06 de agosto de 2012.
Liberado al dominio público.
Modificado por S & T Geotronics 21/08/2013
*/
#include < Wtv020sd16p.h >
#include < Keypad.h >
int resetPin = 3; 2; El número de pin del pin de reset.
clockPin int = 9; 3; El número de pin del pin de reloj.
int dataPin = 8; 4; El número de pin del pin de datos.
int busyPin = 5; El número de pin del pin busy.
/*
Crear una instancia de la clase Wtv020sd16p.
1er parámetro: número de pin de Reset.
2 º parámetro: número de pin de reloj.
parámetro 3: datos pin número.
parámetro 4: número de ocupados pin.
*/
Wtv020sd16p(resetPin,clockPin,dataPin,busyPin) de Wtv020sd16p;
const filas bytes = 4; cuatro filas
byte const COLS = 3; tres columnas
teclas de Char [filas] [COLS] = {}
{'1', '2', 3'},
{'4', '5', 6'},
{'7', '8', 9'},
{'*','0','#'}
};
byte rowPins [filas] = {12, 11, 10, 7}; conectar a las conexiones de la fila del teclado
byte colPins [COLS] = {6, 4, 2}; conectar a las conexiones de la columna del teclado
Teclado teclado = teclado (makeKeymap(keys), rowPins colPins, filas, COLS);
void setup() {}
Inicializa el módulo.
wtv020sd16p.Reset();
Serial.Begin(9600);
}
void loop() {}
clave char = keypad.getKey();
Si (key! = NO_KEY) {}
Serial.println(Key);
int keynum = clave-48;
interruptor (keynum) {}
caso 1:
wtv020sd16p.asyncPlayVoice(1);
Delay(10000);
rotura;
caso 2:
wtv020sd16p.asyncPlayVoice(1010);
Delay(15000);
rotura;
caso 3:
wtv020sd16p.asyncPlayVoice(1030);
Delay(3000);
rotura;
caso 4:
wtv020sd16p.asyncPlayVoice(100);
Delay(3000);
rotura;
caso 5:
wtv020sd16p.asyncPlayVoice(50);
Delay(3000);
rotura;
caso 6:
wtv020sd16p.asyncPlayVoice(1040);
Delay(3000);
rotura;
caso 7:
wtv020sd16p.asyncPlayVoice(1060);
Delay(3000);
rotura;
caso 8:
wtv020sd16p.asyncPlayVoice(1070);
Delay(3000);
rotura;
caso 9:
wtv020sd16p.asyncPlayVoice(1020);
Delay(10000);
rotura;
caso 0:
wtv020sd16p.asyncPlayVoice(2);
Delay(10000);
rotura;
por defecto:
opcional
}
}
}