Clavier AZERTY avec la fonction keyboard

Bonjour à tous
J'ai bricolé un simulateur de train à partir d'un vieux pupitre de commande de locomotive. L'interface entre le pupitre et l'ordinateur est assuré par un arduino avec la fonction Keyboard. La librairie "keyboard" renvoie malheureusement au clavier QWERTY alors que j'ai besoin d'un clavier AZERTY. De plus, je ne peux pas changer les touches sur Train Simulator.
J'ai repéré quelques librairies "keyboardFR" qui semblent permettre cette conversion mais je ne sais laquelle choisir.
En outre, je n'arrive pas à trouver la localisation du répertoire d'installation d'Arduino IDE dans mon PC. Il me semble que j'en ai besoin pour intégrer une éventuelle nouvelle librairie.
Pourriez vous svp m'aider ?
Merci !
Julien

Tu as regardé cette partie de la documentation?

Bonjour,

Il y a un sujet dans les tutos

Merci Kamill et Terwal pur votre réponse.
La librairie KeyboardEx semble adapté à ce que je souhaite faire. J'ai téléchargé le dossier "exemple_keyboardex" mais je ne sais pas comment me débrouiller.
Pourriez vous svp m'expliquer comment procéder ?
Merci !
Julien

Tu dezipes le fichier exemple_keyboardex.zip et tu te retrouve avec l'exemple et le deux fichiers KeyboardEx.h et Keyboard.cpp dans le même répertoire. Tu peux compiler l'exemple.
Si tu veux l'utiliser dans ton propre programme tu copies le fichiers KeyboardEx.h et Keyboard.cpp dans le répertoire de ton programme.

Merci Kamill. J'ai bien compris la procédure. Je m'y attèle cette semaine.

Bonjour à tous

J'ai copié les fichiers keyboardex.cpp et keyboard.h dans le répertoire de mon programme.

J'ai complété mon programme en copiant l'exemple :

En tête de programme :

*#include "KeyboardEx.h"*

*// permet de passer un tableau en mémoire Flash en argument*
*// voir ici https://forum.arduino.cc/index.php?topic=110307.0*

*#define FS(x) (const __FlashStringHelper*)(x)*

*const char chaine_Clavier_FR[] PROGMEM = {" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€£¤§¨°²µÀÂÃÄÈÊËÌÎÏÑÒÔÕÖÙÛÜàâãäçèéêëìîïñòôõöùûüÿ"};*

*char francais[] = {"Français"};*

*const String string_Clavier_FR =      {" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€£¤§¨°²µÀÂÃÄÈÊËÌÎÏÑÒÔÕÖÙÛÜàâãäçèéêëìîïñòôõöùûüÿ"};*

*// Fonctionnera sur Wordpad mais pas sur Notepad pour les caractères unicodes*
*// Décommenté KeyboardEx.setOS(Windows); et la fonction de test dans la loop()*
*String emoji = {"😀 😁 😂 😃 😄 😅 😆 😇 😈 😉 😊 😋 😌 😍 😎 😏 😐 😑 😒 😓 😔 😕 😖 😗 😘 😙 😚 😛 😜 😝 😞 😟 😠 😡 😢 😣 😤 😥 😦 😧 😨 😩 😪 😫 😬 😭 😮 😯 😰 😱 😲 😳 😴 😵 😶 😷"};*

Puis après void_setup()(

 KeyboardEx.begin();
  // KeyboardEx.setOS(Windows); // Si vous êtes sur Windows, permet l'utilisation des Alt Codes.
  // KeyboardEx.setDelay(5); // valeur par défaut, si problème augmenter la valeur à 10.
  Serial.begin(115200);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB
  }
  delay(6000);

Et enfin, après void_loop(), pour écrire une lettre

Keyboard.println('u');

En compilant, Arduino indique une erreur pour cette dernière ligne.

Je précise que je n'avais pas d'erreur avant modification de mon fichier :

C:\Users\Asus\Documents\Arduino\Trainsimulator_V1\Trainsimulator_V1.ino:255:19: error: 'Keyboard' was not declared in this scope
Keyboard.println('u');
^~~~~~~~

Pourriez vous svp m'aider ?

Ce n'est pas Keyboard mais KeyboardEx.

Merci Kamill

J'arrive à compiler le fichier le fichier sans erreur.

En revanche, le téléversement pose problème :

Connecting to programmer: .
Found programmer: Id = "CATERIN"; type = S

  • Software Version = 1.0; No Hardware Version given.*
    Programmer supports auto addr increment.
    Programmer supports buffered memory access with buffersize=128 bytes.

Après téléversement, les touches ne fonctionnent plus.

Sur le fichier non modifié, les touches fonctionnent après téléversement

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.