2

我一直在 waspmotes 上使用 GPS 模块,并且能够从中获取数据。但是在晴朗的日子里,天空清晰可见(我认为这并不重要),我无法打开电源模式。

在调用GPS.setMode(GPS_ON)时,它无法设置电源模式,并且在随后调用时冻结:gpsConnected = GPS.check();

我曾尝试更换 GPS 装置,但无济于事。我正在使用以下代码。(注意:为简洁起见,我删除了不必要的代码)

void setup()
{
  ACC.ON();
  USB.begin();  // Opening UART to show messages using 'Serial Monitor'

  //Initialize the GPS module
  GPS.ON();  // Turn GPS on
  GPS.setMode(GPS_ON);    // set GPS on
  if(!GPS.pwrMode) USB.println("Was unable to set on the GPS internal power mode.");  //this message gets printed.
  if(!GPS.setCommMode(GPS_NMEA_GGA)) USB.println("Was unable to set the GPS communication mode.");

  // Power up the Real Time Clock(RTC), init I2C bus and read initial values
  RTC.ON();
  ........
}

void loop(){
  //declare the variables
  len, i, j = 0;
  char degree[4] = "", minutes[8] = "", *latitude, *longitude, *altitude;
  uint8_t temperature = 0;
  int8_t fileFound = 0;
  double latitude_dd, longitude_dd;
  byte accOk;

  //check if the GPS has connected to the satellite
  GPS.begin();  // open the uart
  GPS.init();  // Inits the GPS module
  gpsConnected = GPS.check();

  ........
  ........
}

可能发生了什么???

任何帮助将不胜感激。

4

2 回答 2

0

这是由使用 RTC.setTime 函数引起的。在代码中,可以在这里看到:http: //pastebin.com/RmA98MkD,在第 195 行RTC.setTimeFromGPS(),我用从 GPS 收到的时间来设置电路板时间。这最终搞砸了 GPS 连接,代码只循环了一次。你可以从这里看到详细的对话:http ://www.libelium.com/forum/viewtopic.php?f=16&t=9861

于 2012-12-13T07:10:20.087 回答
0

你需要简单的测试。首先,确保将 TTl 输入提供给 Tx 和 rx 引脚。如果您上传此程序,它将给出 GPS 输出字符串。如果您使用带有 RS 232 串行输出的 GPS 模块,如您所说,它不会工作。它只需要 TTl 输入

void setup()
{
 Serial.begin();
}
void loop()
{

}
于 2014-01-08T13:08:44.753 回答