Go Down

Topic: Tout début (Read 1 time) previous topic - next topic

dany93500

Bonjour messieurs dames,
Je me présente, j'ai 47 ans je suis graveur et j'habite le 93.
je suis passionné d'aviation.

Je débute tellement en programmation : "C" y compris.
Lorsque je vous écris, je suis sous mon tapis de souris.
Je vous expose les faits.
J'ai acheté un arduino uno avec écran lcd 16x2 shield
et un kit plaque prototype & leds poussoirs...
Afin d'interfacer tout ça avec link2fs & flight simulator fsx.
http://www.jimspage.co.nz/Link2fs_Multi.htm


J'ai un programme qui allumer une led lorsque le train atterrissage est sortie.
le voici :

Code: [Select]
int CodeIn;
String gearnose, gearnoseold;

void setup()
{
pinMode(2, OUTPUT);
digitalWrite(2, LOW);
Serial.begin(115200);
}

char getChar()
{
while (Serial.available() == 0);
return ((char)Serial.read());
}

void loop()
{
CodeIn = getChar();
  if (CodeIn == 'A')
  {delay (11);
    gearnose = "";
    gearnose += char(Serial.read());
    gearnose += char(Serial.read());
    gearnose += char(Serial.read());
    if (gearnose == "100")
    {digitalWrite(2, HIGH);}
    else {digitalWrite(2, LOW);}
  }
}

il fonctionne parfaitement.


J'ai un second programme qui affiche sur lcd : l'altitude, la vitesse, le cap...

le voici :

Code: [Select]
#include <LiquidCrystal.h>
int CodeIn;
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
String vs, hdg, vit, vitold, altit, altitold, vertsp, vertspold, hdgset, hdgsetold, flaps, flapsold;

void setup()
{lcd.begin(16, 2);
Serial.begin(115200);}

char GETCodeIn()
{while (Serial.available() == 0);
return ((char)Serial.read());}

void loop() {
CodeIn = GETCodeIn();
switch (CodeIn)
  {case 'D':
      altit = "";
      altit += GETCodeIn();
      altit += GETCodeIn();
      altit += GETCodeIn();
      altit += GETCodeIn();
      altit += GETCodeIn();
      lcd.setCursor(0, 0);
      lcd.print("Alt " + altit);
      altitold = altit;
      break;
     
    case 'P':
      vit = "";
      vit += GETCodeIn();
      vit += GETCodeIn();
      vit += GETCodeIn();
      lcd.setCursor(0, 1);
      lcd.print("Vit " + vit);
      break;

    case 'J':
      hdg = "";
      hdg += GETCodeIn();
      hdg += GETCodeIn();
      hdg += GETCodeIn();
      lcd.setCursor(9, 1);
      lcd.print("Hdg " + hdg);
      break;

    case 'L':
      vs = "";
      vs += GETCodeIn();
      vs += GETCodeIn();
      vs += GETCodeIn();
      vs += GETCodeIn();
      lcd.setCursor(9, 0);
      lcd.print(" Vs" + vs);
      break;
      }
      }

ce programme fonctionne aussi parfaitement.

Mon soucis est que Je souhaite réunir ces deux programmes en un seul !?!

Je capillotracte depuis des jours et des heures.
Je n'y arrive pas.
Je vous remercie par avance.
La petite souris qui est sous le tapis.

pierrotm777

Réuni les setup en un seul et les loop en un seul. Ajoutés ce qui ce trouve avant le setup du deuxième programme avant celui du premier. Compiles, ça doit aller tout seul.

Artouste

#2
Jan 18, 2017, 10:00 pm Last Edit: Jan 18, 2017, 10:01 pm by Artouste
Bonjour messieurs dames,
Je me présente, j'ai 47 ans je suis graveur et j'habite le 93.
je suis passionné d'aviation.
Bonsoir
C'est le bon endroit pour te presenter :smiley-mr-green:
mais... pas pour exposer ton problème. 8)

Ouvre un topic dans la section générale

 

Go Up