首页 > 解决方案 > Neo 6m gps 模块中的绿色 LED 闪烁但未获取数据

问题描述

我正在使用 neo 6m GPS 模块。早些时候,它工作得很好。但是现在,绿色 LED 闪烁,我没有收到任何数据。纬度和经度显示为 0。我使用了这段代码。

#include <LiquidCrystal.h>
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
//long   lat,lon; // create variable for latitude and longitude object
double lat ,lng ; // create variable for latitude and longitude object
SoftwareSerial gpsSerial(2,3);//rx,tx
const int rs = 9, en = 8, d4 = 7, d5 = 6, d6 = 5, d7 = 4;
LiquidCrystal lcd(rs,en,d4,d5,d6,d7);
TinyGPSPlus gps; // create gps object
void setup()
{
  Serial.begin(9600); // connect serial
  Serial.println("The GPS Received Signal:");
  gpsSerial.begin(9600); // connect gps sensor
  lcd.begin(16,2);
}

void loop()
{
  while(gpsSerial.available())
  {
    if(gps.encode(gpsSerial.read()))
    {
      // encode gps data
      lat =gps.location.lat();
      lng=gps.location.lng();
      // get latitude and longitude
      // display position
      lcd.clear();
      lcd.setCursor(1,0);
      lcd.print("GPS Signal");
      lcd.setCursor(1,0);
      lcd.print("LAT:");
      lcd.setCursor(5,0);
      lcd.print(lat);
      Serial.print(lat);
      Serial.print(" ");
      Serial.print(lng);
      Serial.print(" ");
      lcd.setCursor(0,1);
      lcd.print(",LON:");
      lcd.setCursor(5,1);
      lcd.print(lng);
    } 
  }
  String latitude = String(lat,6);
  String longitude = String(lng,6);
  Serial.println(latitude+";"+longitude);
  delay(3000);

}

请告诉我哪里出错了。

标签: gpsarduino-uno

解决方案


推荐阅读