salut , je vien d'acheter un clavier et une arduino , je compte les brancher ensemble , j'ai consulté le site arduino pour voir comment ecrire le programme , mais quand je vérifie avec l'application arduino il m'affiche : no matching function for call to 'Keypad::Keypad(char*, byte [4], byte [3], const byte&, const byte&)'
Le code est celui d'arduino c'est celui la :
#include <Keypad.h>
const byte ROWS = 4; //four rows
const byte COLS = 3; //four columns
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'#','0','*'}
};
byte rowPins[ROWS] = {5, 4, 3, 2}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {8, 7, 6}; //connect to the column pinouts of the keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); // c'est ici qu'il y'a la faute
void setup(){
Serial.begin(9600);
}
void loop(){
char key = keypad.getKey();
if (key != NO_KEY){
Serial.println(key);
}
}
PS : j'ai utilisé arduino 1.0 et 1.0.3
Aider moi s'il vous plait
Il te manque la librairie Keypad.
Il faudrait regarder là où tu as trouvé l'exemple de code, il doit y avoir un lien ou des infos supplémentaires pour récupérer cette librairie.
J'ai ca aussi :
In file included from sketch_mar19a.cpp:1:
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:50: error: 'byte' does not name a type
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:51: error: 'byte' does not name a type
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:63: error: 'byte' has not been declared
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:63: error: 'byte' has not been declared
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:63: error: 'byte' has not been declared
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:63: error: 'byte' has not been declared
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:78: error: ISO C++ forbids declaration of 'byte' with no type
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:78: error: expected ';' before '' token
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:79: error: ISO C++ forbids declaration of 'byte' with no type
C:\Users\StribudA\Desktop\arduino-1.0.1\libraries\Keypad/Keypad.h:79: error: expected ';' before '' token
Je pencherais pour une incompatibilité de version entre la librairie et l'IDE utilisé.
La librairie doit être développé pour un IDE d'ancienne génération avant la 1.0.
Regardes les sources de la librairie. Si elle n'est pas trop complexe peut être que le remplacement de #include "WProgram.h"
par #include <Arduino.h>
pourrait régler le problème.
Ou alors, tu pourrais essayer d'installer la version 0.23 de l'IDE.
J'ai téléchargé 0.23 , ça marche , la compilation est complète sans erreur mais le problème c'est que si je veux utiliser arduino leonardo et un clavier , je pourrai pas a programmer :s
Merci de m'aider