【问题标题】:Arduino sending sms in GSM sim900 errorArduino在GSM sim900错误中发送短信
【发布时间】:2014-05-17 14:54:04
【问题描述】:

我有一个 Arduino Mega 2560 和一个 sim900 gsm 模块。 我成功地连接了它们并编写了代码。它可以工作,但我在 while 循环中一次只能发送 1 条短信。这意味着当我编写一个 while 循环以使用 while 循环执行 sendms() 5 次时。只发送了一条短信..它停止了...

代码如下:

#include <SoftwareSerial.h>
#include <String.h>
SoftwareSerial mySerial(52, 53);

void setup()
{
     mySerial.begin(19200);      // the GPRS baud rate   
     Serial.begin(19200);    // the GPRS baud rate 
     delay(500);

}

int x = 0;

loop()
{

    while (x<5)
    {
     SendTextMessage();  
     x++;
     }  

 }


void SendTextMessage()
{
 mySerial.print("AT+CMGF=1\r");
 delay(100);
 mySerial.println("AT + CMGS = \"+94776511996\"");
 delay(100);
 mySerial.println("hey wow");
 delay(100);
 mySerial.println((char)26);
 delay(100);
 mySerial.println();
}

【问题讨论】:

    标签: sms arduino gsm at-command


    【解决方案1】:

    您不能仅仅以 100 毫秒的延迟将 AT 命令转储到 SIM900 上,并期望它能够正常工作。 SIM900 响应 AT 命令(通常以“OK”),您应该在发出下一个命令之前等待此响应。只有在 AT 命令之间提供足够的延迟以确保每个命令仅在 SIM900 有足够的时间响应前一个命令之后才发送,您才可以忽略这些响应。为了快速验证这一点,我会在 sendTextMessage() 函数的末尾添加一个 delay(10000) - 10 秒的延迟。这将(可能)给 SIM900 足够的时间来完成 SMS 传输,然后再继续下一个。

    【讨论】:

    • 确保仅出于测试目的尝试 10 秒延迟。对于真正的代码,您必须(如答案开头所述)读取并解析从调制解调器收到的所有内容。永远,永远,永远使用延迟来等待任何 AT 命令响应。它就像踢狗一样有用,以使它们移动。是的,它有时可能确实有效,但在某些时候你会为采用这种方法而感到抱歉......
    • 有关如何正确执行此操作的更多提示,请参阅与此相关的this answersome of my other answers 的第一部分以了解更多详细信息。
    • 先生,实际上我的程序应该在我的程序执行时向 10 个号码发送短信。同时连接到 arduino 的 rfid 阅读器也应该可以工作。所以如果我需要在每个 sms 命令后等待 10 秒,我的系统就没用了。 hlovdal>“读取并解析从调制解调器收到的所有内容”是什么意思。请用代码示例进行解释。谢谢
    【解决方案2】:
    void SendTextMessage(){
      mySerial.write("AT+CMGF=1\r\n");
      delay(1000); 
      mySerial.write("AT+CMGS=\"+94776511996\"\r\n");
      delay(1000);
      mySerial.write("Test");
      delay(1000);   
      mySerial.write((char)26);
      delay(2000);
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多