École de Simulation de Combat Aérien - DCS World
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
ASOS Soldes : -20% en plus sur les Soldes avec ce ...
Voir le deal

Aller en bas
morgosth
morgosth
Pilote de la 8e Escadre
Pilote de la 8e Escadre
Élève UH-1H
Localisation : Angers
Messages : 101

cherche personne qualifiée Arduino Empty cherche personne qualifiée Arduino

Mar 21 Déc - 23:36
cherche personne qualifiée Arduino Img_2019 Salut, j ai realisé mon premier panel et pour des questions de nombre d'entrées, j ai choisi d'utiliser une leonardo couplée à une micro. N'ayant jamais fait d'arduino, chaque etape est une aventure... bref, j ai connecté 56 boutons en matrice clavier cherche personne qualifiée Arduino 300px-Schema_matrice_clavier_avec_diodes
avec ce programme:
Code:
#include <Keypad.h>
#include <Joystick.h>

#define ENABLE_PULLUPS

#define NUMBUTTONS0 28
#define NUMBUTTONS1 28
#define NUMROWS0 4
#define NUMCOLS0 7
#define NUMROWS1 4
#define NUMCOLS1 7

#define JOYSTICK_COUNT 2

#define NUMBUTTONS0 28
#define NUMBUTTONS1 28
#define NUMROWS0 8
#define NUMCOLS0 4
#define NUMROWS1 8
#define NUMCOLS1 3

#define JOYSTICK_COUNT 2


byte buttons0[NUMROWS0][NUMCOLS0] = {
  {0, 8, 16, 24},
  {1, 9, 17, 25},
  {2, 10, 18, 26},
  {3, 11, 19, 27},
  {4, 12, 20, 28},
  {5, 13, 21, 29},
  {6, 14, 22, 30},
  {7, 15, 23, 31},      
};

byte buttons1[NUMROWS1][NUMCOLS1] = {
  {0, 8, 16},
  {1, 9, 17},
  {2, 10, 18},
  {3, 11, 19 },
  {4, 12, 20},
  {5, 13, 21,},
  {6, 14, 22},
  {7, 15, 23},
};
byte rowPins0[NUMROWS0] = {3,4,5,6,7,8,9,10};
byte colPins0[NUMCOLS0] = {11,12,13,A0};

byte rowPins1[NUMROWS1] = {3,4,5,6,7,8,9,10};
byte colPins1[NUMCOLS1] = {A1,A2,A3};

Keypad buttbx = Keypad( makeKeymap(buttons0), rowPins0, colPins0, NUMROWS0, NUMCOLS0);
Keypad buttbx1 = Keypad( makeKeymap(buttons1), rowPins1, colPins1, NUMROWS1, NUMCOLS1);

Joystick_ Joystick[JOYSTICK_COUNT] = {
  Joystick_ (0x04, JOYSTICK_TYPE_JOYSTICK, 32, 0, true, true, true, true, true, true, false, false, false, false, false),
  Joystick_ (0x05, JOYSTICK_TYPE_MULTI_AXIS, 32, 2, true, true, true, true, true, true, false, false, false, false, false)
};

void setup() {
  Joystick[0].begin();
  Joystick[1].begin();

}

void loop() {
  CheckAllButtons0();
  CheckAllButtons1();

}

void CheckAllButtons0(void) {
  if (buttbx.getKeys())
  {
    for (int i = 0; i < LIST_MAX; i++)
    {
      if ( buttbx.key[i].stateChanged )
      {
        switch (buttbx.key[i].kstate) {
          case PRESSED:
          case HOLD:
            Joystick[0].setButton(buttbx.key[i].kchar, 1);
            break;
          case RELEASED:
          case IDLE:
            Joystick[0].setButton(buttbx.key[i].kchar, 0);
            break;
        }
      }
    }
  }
}
  void CheckAllButtons1(void) {
    if (buttbx1.getKeys())
    {
      for (int i = 0; i < LIST_MAX; i++)
      {
        if ( buttbx1.key[i].stateChanged )
        {
          switch (buttbx1.key[i].kstate) {
            case PRESSED:
            case HOLD:
              Joystick[1].setButton(buttbx1.key[i].kchar, 1);
              break;
            case RELEASED:
            case IDLE:
              Joystick[1].setButton(buttbx1.key[i].kchar, 0);
              break;
          }
        }
      }
    }
  }



Et ça fonctionne parfaitement!!! super, mais maintenant, je m arrache les cheveux 
il me reste deux switchs, un rotatif 9pin, un autre 4 pin et deux potentiometres.
voilà mes questions:
1- comment coupler les deux cartes? et comment vont elles travailler ensemble?
(oui j'ai triché, deux questions en une)
2- comment inserer les nouveaux codes dans celui dejà existant?
Merci d'avance rendeer

Killight et Fagui aiment ce message

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum