Adafruit Ultimate GPS Arduino

Bonjour,

je viens d'acheter un module Adafruit Ultimate GPS compatible arduino. J'ai suivi le tuto d'adafruit, j'ai tester les exemples. Jusqu'a la tous va bien.

J'ai voulu faire un nouveau programme en m'inspirant des exemples. Le but était d'afficher 1 ou 0 à l'écran en fonction de la synchronisation(fix). Malheureusement, c'est toujours affiché 0. Pourtant, la LED fix sur le module s'arrête de clignoter.

Voici mon code:

#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>

#include <Adafruit_GPS.h>
#include <SoftwareSerial.h>

Adafruit_PCD8544 display = Adafruit_PCD8544(12,11,10,9,8);

SoftwareSerial mySerial(3, 2);
Adafruit_GPS GPS(&mySerial);

void setup() {
  Serial.begin(115200);
  display.begin();

  display.setContrast(50);

  display.setRotation(2);

  display.clearDisplay();
  display.display();

  GPS.begin(9600);

  GPS.sendCommand(PMTK_SET_NMEA_OUTPUT_RMCGGA);
  GPS.sendCommand(PMTK_SET_NMEA_UPDATE_1HZ);
  GPS.sendCommand(PGCMD_NOANTENNA);  

}

void loop() {
  char c = GPS.read();
  if (GPS.newNMEAreceived()) {
    if (!GPS.parse(GPS.lastNMEA())){
      return;
    }
  }
  display.clearDisplay();
  display.setCursor(0,0);
  display.print("sync: ");
  display.println((int)GPS.fix);
  display.display();
}

Qu'est ce qu'il ne vas pas?

Je vous remercie d'avance :slight_smile:

En gros votre code clignote super vite entre effacement de l’écran et affichage entre 2 caractères reçus du gps
Essayez de structure un peu mieux avec des else et un affichage qui dit attente, puis sync mais ne le fait qu’une fois

Bonsoir,

Sur la datasheet du GPS il est clairement indiqué que si la LED clignote il n'y a pas de fix et quand elle est allumée il y a un fix.

En regardant le code source d'adafruit .fix est une variable qui est indépendante de ce signal donc c'est normal que tu reçois un 0 lorsque la LED clignote.