【问题标题】:Neo-6M GPS returning no values on Arduino NanoNeo-6M GPS 在 Arduino Nano 上没有返回值
【发布时间】:2020-01-22 10:34:44
【问题描述】:

我最近为我的 Arduino Nano 购买了一个 GPS 模块。 GPS 没有接收到任何卫星。我检查了我的代码和接线,看不到任何可能影响它的东西。有时,当代码第一次运行时,它会发送一个混乱的 NMEA 代码,但会停止。我的代码如下。

#include <Arduino.h>
#include <Adafruit_BMP085.h>
#include <Wire.h>
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include "AltSoftSerial.h"



Adafruit_BMP085 bmp;
AltSoftSerial ss;
TinyGPSPlus gps;
float lat = 10;
float lon = 10;

void setup() {
  Serial.begin(9600);
  bmp.begin();
  ss.begin(9600);
} 

void loop() {
  Serial.print("Pressure:");
  Serial.print(bmp.readPressure());
  Serial.println(" ");
  Serial.print("Temp:");
  Serial.print(bmp.readTemperature());
  Serial.println("C* , ");
  gps.encode(ss.read());
  if (ss.available() > 0){
    Serial.print("Latitude= "); 
    Serial.print(gps.location.lat());
    Serial.print(" Longitude= "); 
    Serial.println(gps.location.lng());
    Serial.print("GPS Height:");
    Serial.println(gps.altitude.meters());
    Serial.print("Number of Sattilites:");
    Serial.println(gps.satellites.value());
    Serial.print("Date:");
    Serial.println(gps.date.day() + "/" + gps.date.month());
  }

  delay(3000);
}

这是串行监视器上显示的内容的片段

Pressure:100397 
Temp:30.10C* ,
Latitude= 0.00 Longitude= 0.00
GPS Height:0.00
Number of Sattilites:0
Date:/
Pressure:100396 
Temp:30.10C* ,
Latitude= 0.00 Longitude= 0.00
GPS Height:0.00
Number of Sattilites:0
Date:/

谢谢

【问题讨论】:

  • 延迟(3000)可能会导致后台进程(例如管理 GPS)无法运行而导致问题。这只是一个猜测。请参阅 arduino.cc/en/tutorial/BlinkWithoutDelay 以了解如何避免代码中的长时间 delay() 调用。

标签: arduino gps


【解决方案1】:

谢谢,这似乎已经解决了。我看的所有教程都使用了delay(),所以我认为它不会影响它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    相关资源
    最近更新 更多