我一直在使用ispmotes上的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();
........
........
}
可能发生了什么?
任何帮助将不胜感激。
答案 0 :(得分:0)
这是由使用RTC.setTime函数引起的。在代码中,可以在这里看到:http://pastebin.com/RmA98MkD,在第195行,RTC.setTimeFromGPS()
,我正在设置电路板时间与我从GPS接收的时间。这最终搞砸了GPS连接,代码只循环了一次。您可以在此处查看详细的对话:http://www.libelium.com/forum/viewtopic.php?f=16&t=9861
答案 1 :(得分:0)
你需要简单的测试。首先,确保将TTl输入提供给Tx和rx引脚。如果你上传这个程序它将提供GPS输出字符串。如果你使用RS模块串口输出RS 232输出,正如你所说它不会工作.IT只期待TTl输入
void setup()
{
Serial.begin();
}
void loop()
{
}