如何在Arduino上获取实时GPS Sim800模块RTC时间

电子技术

您好,我想在不使用库的情况下在Arduino上进行实时GPS Sim800模块RTC时间,我可以使用库来实现,但是没有库,正确的数据仅在1分钟内出现,而其他的则是垃圾。

请告诉我可以帮助我实现的代码

使用代码,我做了以下事情

#include <SoftwareSerial.h>
SoftwareSerial gsm(10, 11);
String Buffer;
String inData;

int i;
int *year, *month, *day, *hour, *minute, *second;

void setup() {
  Serial.begin(9600);
  gsm.begin(9600);
  delay(5000);
}

void loop() {
Ansh:
  delay(500);
  gsm.println("AT+CCLK?\r\n");
  while (gsm.available()) {
    char recieved = gsm.read();
    inData += recieved;
    delay(100);

    // Process message when new line character is recieved
    if (recieved == '\n')
    {
      Serial.print("Arduino Received: ");
      Serial.println(inData);

      if (inData.substring(1, 5) == "+CCLK") {
        Serial.println("Hello");
      }

      // You can put some if and else here to process the message juste like that:

      if (inData == "+++\n") { // DON'T forget to add "\n" at the end of the string.
        Serial.println("OK. Press h for help.");
      }


      inData = ""; // Clear recieved buffer
      goto Ansh;
    }

    /* Buffer = Buffer.substring(Buffer.indexOf("\"") + 1, Buffer.lastIndexOf("\"") - 1);
      year = Buffer.substring(0, 2).toInt();
      month = Buffer.substring(3, 5).toInt();
      day = Buffer.substring(6, 8).toInt();
      hour = Buffer.substring(9, 11).toInt();
      minute = Buffer.substring(15, 17).toInt();
      second = Buffer.substring(18, 20).toInt();
    */
  }/*
  Serial.println(*hour);
  delay(100);
  Serial.println(*minute);
  delay(100);
  Serial.println(*second);
  delay(100);
*/
}

但是我没有得到实时输出,但是在1个正确的输出之后,它返回如下垃圾

12:22:38.960->接收到Arduino:+ CCLK:“ 20/10 / 04,12:22:31 + 22” 12:22:38.960-> 12:22:39.672->接收到Arduino:12:22:39.672 -> 12:22:40.596->收到Arduino:OK 12:22:40.596-> 12:22:42.339->收到Arduino:AT + CCLK?

12:22:42.339-> 12:22:44.362->接收到的Arduino:+ CCAT + CCLK?

12:22:44.362-> 12:22:46.0​​67->接收到的Arduino:AT + CCLK?

12:22:46.0​​67-> 12:22:50.344->接收到的Arduino:+ CCLK:“ 20/10 / 04,12ATAT + CAT + CCLK?

12:22:50.344-> 12:22:52.043->收到Arduino:AT + CCLK?

12:22:52.043-> 12:22:54.082->收到Arduino:+ CCAT + CCLK?

12:22:54.082-> 12:22:55.822->收到Arduino:AT + CCLK?

12:22:55.822-> 12:23:00.064->收到Arduino:+ CCLK:“ 20/10 / 04,12:22:49AT + CCLK?

12:23:00.098-> 12:23:01.791->收到Arduino:AT + CCLK?

12:23:01.791-> 12:23:03.810->接收到的Arduino:+ CCAT + CCLK?

12:23:03.845-> 12:23:05.552->接收到Arduino:AT + CCLK?

12:23:05.552-> 12:23:09.803->接收到的Arduino:+ CCLK:“ 20/10 / 04,12:22:58AT + CCLK?

12:23:09.838-> 12:23:11.544->收到Arduino:AT + CCLK?

12:23:11.544-> 12:23:13.563->接收到的Arduino:+ CCAT + CCLK?

12:23:13.563-> 12:23:15.290->接收到的Arduino:AT + CCLK?

12:23:15.290-> 12:23:19.557->接收到的Arduino:+ CCLK:“ 20/10 / 04,12:23:08AT + CCLK?

12:23:19.557-> 12:23:21.278->接收到的Arduino:AT + CCLK?

如果我从代码中删除了延迟,那么我将收到以下输出

12:34:56.406->接收到的Arduino:(⸮⸮SCC⸮CL?⸮

1-⸮

AT + CCLK?

AT + CCL〜Q⸮-j 12:34:56.473-> 12:34:56.541->接收到的Arduino:⸮5⸮⸮AT+ CCLK?

⸮⸮〜⸮⸮1⸮j⸮b-⸮

AT + CCLK?

AT +C⸮〜⸮⸮1-j⸮5⸮⸮(⸮i1-⸮

AV⸮1-j12:34:56.607-> 12:34:56.913->接收到的Arduino:⸮5⸮⸮J⸮jj⸮jAT + CCLK?

AT + CCLK?

AT + CCLK?

AT +CK5Q⸮1⸮j⸮5⸮⸮AT+ CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT +CCLK⸮Q⸮Zj⸮5⸮⸮(⸮⸮1-⸮

1⸮j⸮5j⸮ը(⸮CCP⸮i1-⸮5Q⸮⸮j⸮jj⸮ը(j⸮jQb⸮⸮E⸮jj⸮(⸮⸮1-⸮5Q⸮Zj⸮5⸮⸮(⸮⸮( j⸮jQ⸮Zj⸮5j⸮ը(⸮j⸮⸮1⸮j⸮⸮5j⸮(⸮⸮(⸮j⸮V1-j 12:34:57.184-> 12:34:57.252-> Arduino收到:⸮ 5⸮⸮D⸮j1-⸮

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

1-⸮

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCL〜Q⸮-j 12:34:57.354-> 12:34:57.561->接收到的Arduino:⸮5⸮⸮AT+ CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?j AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT +C⸮⸮5Q⸮⸮⸮Ԋi⸮j⸮(Q⸮⸮j⸮jj⸮ը(⸮CCP⸮i⸮j⸮ը(⸮CC⸮⸮⸮K?⸮+ CCLK?

AT +C⸮Q⸮Zj⸮5⸮⸮(Q⸮-j 12:34:57.763-> 12:34:57.763->接收到的Arduino:⸮5⸮⸮E⸮jj⸮jAT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT + CCLK?

AT⸮⸮z⸮⸮z⸮⸮b⸮⸮Қ⸮Ҫ⸮Z⸮⸮j12:34:57.866-> 12:34:57.866-> Arduino接收:12:34:57.905-> 12:34:57.905- >收到Arduino:确定12:34:57.968-> 12:34:57.968->收到Arduino:AT + CCLK?

12:34:57.968-> 12:34:57.968->接收到的Arduino:+ CCLK:“ 20/10 / 04,12:34:54 + 22” 12:34:58.037-> 12:34:58.037-> Arduino接收:12:34:58.070-> 12:34:58.070-> Arduino接收:OK 12:34:58.070-> 12:34:58.070-> Arduino接收:AT + CCK⸮⸮'I⸮)j⸮H( ⸮5⸮ꨨH⸮)⸮Қ⸮Ҫ⸮Z⸮⸮j12:34:58.138-> 12:34:58.138-> Arduino接收:12:34:58.172-> 12:34:58.172-> Arduino接收:确定A +⸮1-⸮jRb҂⸮jjZ⸮⸮Ҫ⸮Z⸮⸮Ҫ⸮j12:34:58.207-> 12:34:58.207->收到的Arduino:

丹尼

尝试这个:

#include <SoftwareSerial.h>

SoftwareSerial gsm(10, 11);
String inData;

void setup() {
    Serial.begin(9600);
    gsm.begin(9600);
    delay(5000);
}

void loop() {

    inData = "";

    gsm.println("AT+CCLK?");
    delay(500);

    while (gsm.available()) {
        inData += char(gsm.read());
    }

    Serial.print("Arduino Received: ");
    Serial.println(inData);

    delay(500);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过AT命令了解SIM800模块的网络状态?

来自分类Dev

如何使用SIM800的AT+HTTPHEAD

来自分类Dev

如何从Arduino上的UP501 gps模块获取数据?

来自分类Dev

RPI上的SIM800 Sim应用程序工具包

来自分类Dev

在Raspberry Pi 2上使用AT命令和Python接收空白SMS SIM800

来自分类Dev

用于arduino的SIM800L模块有时不会调用或发送消息

来自分类Dev

如何在UIView上显示实时时间-Swift

来自分类Dev

如何检查SIM800L for Arduino上的呼叫是否处于活动状态?

来自分类Dev

Arduino RTC 模块显示备用信息

来自分类Dev

如何在 Nodejs 上显示实时服务器日期和时间

来自分类Dev

如何获取重复事件的实时时间?

来自分类Dev

如何获取重复事件的实时时间?

来自分类Dev

Arduino Nano 无串口通讯 SIM800C

来自分类Dev

如何在AWS内核上获取配额内核模块?

来自分类Dev

SUMO sim 时间和实时时差

来自分类Dev

如何在iOS上获取“互联网时间”?

来自分类Dev

如何在移动地图实时时从android中的地图中心获取gps坐标

来自分类Dev

如何在内核空间中设置rtc时间?

来自分类Dev

如何通过 Arduino 蓝牙模块将数据实时传递到运行 python 脚本的 PC?

来自分类Dev

如何在Arduino上获取PICC序列号

来自分类Dev

如何在C ++中将GPS时间转换为UTC?

来自分类Dev

如何在React JS中实时显示时间和日期?

来自分类Dev

Arduino UNO + SIM800L-将数据发送到服务器

来自分类Dev

如何从SIM卡中检测日期时间?

来自分类Dev

如何使用Arduino从NodeMcu中的URL获取实时数据?

来自分类Dev

如何在Arduino中使用时间库?

来自分类Dev

如何在内置模块上获取覆盖的内置方法的原始版本?

来自分类Dev

如何在 Android 上使用 Kotlin 获取 Dagger 2 模块中的组件依赖项?

来自分类Dev

如何在Java中的gzip内的文件上获取时间戳

Related 相关文章

  1. 1

    如何通过AT命令了解SIM800模块的网络状态?

  2. 2

    如何使用SIM800的AT+HTTPHEAD

  3. 3

    如何从Arduino上的UP501 gps模块获取数据?

  4. 4

    RPI上的SIM800 Sim应用程序工具包

  5. 5

    在Raspberry Pi 2上使用AT命令和Python接收空白SMS SIM800

  6. 6

    用于arduino的SIM800L模块有时不会调用或发送消息

  7. 7

    如何在UIView上显示实时时间-Swift

  8. 8

    如何检查SIM800L for Arduino上的呼叫是否处于活动状态?

  9. 9

    Arduino RTC 模块显示备用信息

  10. 10

    如何在 Nodejs 上显示实时服务器日期和时间

  11. 11

    如何获取重复事件的实时时间?

  12. 12

    如何获取重复事件的实时时间?

  13. 13

    Arduino Nano 无串口通讯 SIM800C

  14. 14

    如何在AWS内核上获取配额内核模块?

  15. 15

    SUMO sim 时间和实时时差

  16. 16

    如何在iOS上获取“互联网时间”?

  17. 17

    如何在移动地图实时时从android中的地图中心获取gps坐标

  18. 18

    如何在内核空间中设置rtc时间?

  19. 19

    如何通过 Arduino 蓝牙模块将数据实时传递到运行 python 脚本的 PC?

  20. 20

    如何在Arduino上获取PICC序列号

  21. 21

    如何在C ++中将GPS时间转换为UTC?

  22. 22

    如何在React JS中实时显示时间和日期?

  23. 23

    Arduino UNO + SIM800L-将数据发送到服务器

  24. 24

    如何从SIM卡中检测日期时间?

  25. 25

    如何使用Arduino从NodeMcu中的URL获取实时数据?

  26. 26

    如何在Arduino中使用时间库?

  27. 27

    如何在内置模块上获取覆盖的内置方法的原始版本?

  28. 28

    如何在 Android 上使用 Kotlin 获取 Dagger 2 模块中的组件依赖项?

  29. 29

    如何在Java中的gzip内的文件上获取时间戳

热门标签

归档