【发布时间】:2016-09-17 07:56:14
【问题描述】:
我正在使用 CRIUS Neo-6 GPS 模块,我想每 10 秒通过 GSM 模块从 GPS 发送数据。我的代码如下所示:
if (Serial1.available() > 0)
if (gps.encode(Serial1.read()))
{
double hour = gps.time.hour();
double minute = gps.time.minute();
double second = gps.time.second();
Serial.println("Sending SMS:");
GPRS.print("AT+CMGF=1\r");
delay(100);
GPRS.println("AT+CMGS= \"00*********\"");
delay(100);
GPRS.print("HOUR=");
GPRS.print(hour);
GPRS.print(" MINUTE=");
GPRS.println(minute);
GPRS.print(" SECOND=");
GPRS.println(second);
delay(100);
GPRS.print((char)26);
delay(100);
GPRS.println();
Serial.println("Text sent.");
Serial.println();
delay(10000);
}
Serial1 是用于与 GPS 模块通信的 SoftwareSerial 实例。 现在这每 10 秒发送一条短信,但数据混乱,就像时间不总是刷新一样。我得到类似的东西:
小时=6.00 分钟=37.00 秒=54.00
小时=6.00 分钟=37.00 秒=54.00
小时=6.00 分钟=37.00 秒=54.00
小时=6.00 分钟=38.00 秒=15.00
等等.. 它总是有两个或三个相同的 SMS-es,然后下一个有 30 秒的间隔。我应该更改什么以始终发送最新的 gps 时间?
【问题讨论】: