Не работает GPS-модуль NEO-6M

Тема в разделе "Arduino & Shields", создана пользователем AlexAxel, 15 авг 2017.

  1. AlexAxel

    AlexAxel Нерд

    Обзавелся сабжевым модулем, подключил, но проблема.

    Подключение на UNO:
    VCC----3.3V
    GND----GND
    RX------4
    TX------3

    Скетч из примера TinyGPS

    Код (C++):
    #include <SoftwareSerial.h>

    #include <TinyGPS.h>

    /* This sample code demonstrates the normal use of a TinyGPS object.
       It requires the use of SoftwareSerial, and assumes that you have a
       4800-baud serial GPS device hooked up on pins 4(rx) and 3(tx).
    */


    TinyGPS gps;
    SoftwareSerial ss(4, 3);

    void setup()
    {
      Serial.begin(9600);
      ss.begin(9600);
     
      Serial.print("Simple TinyGPS library v. "); Serial.println(TinyGPS::library_version());
      Serial.println("by Mikal Hart");
      Serial.println();
    }

    void loop()
    {
      bool newData = false;
      unsigned long chars;
      unsigned short sentences, failed;

      // For one second we parse GPS data and report some key values
      for (unsigned long start = millis(); millis() - start < 1000;)
      {
        while (ss.available())
        {
          char c = ss.read();
          // Serial.write(c); // uncomment this line if you want to see the GPS data flowing
          if (gps.encode(c)) // Did a new valid sentence come in?
            newData = true;
        }
      }

      if (newData)
      {
        float flat, flon;
        unsigned long age;
        gps.f_get_position(&flat, &flon, &age);
        Serial.print("LAT=");
        Serial.print(flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6);
        Serial.print(" LON=");
        Serial.print(flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6);
        Serial.print(" SAT=");
        Serial.print(gps.satellites() == TinyGPS::GPS_INVALID_SATELLITES ? 0 : gps.satellites());
        Serial.print(" PREC=");
        Serial.print(gps.hdop() == TinyGPS::GPS_INVALID_HDOP ? 0 : gps.hdop());
      }
     
      gps.stats(&chars, &sentences, &failed);
      Serial.print(" CHARS=");
      Serial.print(chars);
      Serial.print(" SENTENCES=");
      Serial.print(sentences);
      Serial.print(" CSUM ERR=");
      Serial.println(failed);
      if (chars == 0)
        Serial.println("** No characters received from GPS: check wiring **");
    }
    При просмотре порта выдает

    CHARS=0 SENTENCES=0 CSUM ERR=0
    ** No characters received from GPS: check wiring **
    CHARS=0 SENTENCES=0 CSUM ERR=0
    ** No characters received from GPS: check wiring **

    Типа - ничего не поступает, проверяйте соединение. Пробовал подключить через USB-UART на PL2303 - в порту тоже тишина.

    Так вот вопрос - модуль умер, или надо его как-то инициализировать перед запуском? И как его еще можно на работоспособность проверить?
     
  2. BAR__MEN

    BAR__MEN Иномирянин Команда форума

    Tx и rx не перепутали?! И помоему этот скетч не рабочий...
     
  3. BAR__MEN

    BAR__MEN Иномирянин Команда форума

    В Китае бы купили за 400руб..
     
  4. b707

    b707 Гуру

    3.3в выход в Уне очень слабенький. возможно модему не хватает питания
     
  5. AlexAxel

    AlexAxel Нерд

    И так и так пробовал - нифига. Возможно и нерабочий. Другие скетчи грузил с тем же самым результатом

    В Китае и купил, за 233,71

    Я его подключал к пятивольтовому питанию, эффект тот же
     
  6. b707

    b707 Гуру

    если модем на 3.3в, а вы его к 5в подключали. может уже сгорел?
     
  7. ostrov

    ostrov Гуру

    Скорость перебирать пробовали? Бывает непредсказуемая настройка.