无法使用GSM模块SIM900A发送短信

问题描述 投票:0回答:1

我正在尝试使用GSM SIM900A发送短信。但是那里没有编译错误和其他干扰。

该代码已正确执行,但未将SMS发送到代码中提到的号码。


#include <TinyGPS.h>
#include <SoftwareSerial.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);
SoftwareSerial SIM900A(7, 8);

void setup()
{

  Serial.begin(9600);
  SIM900A.begin(9600);
  pinMode(6, INPUT);
}

void loop()
{

  bool state = digitalRead(6);
  if (state == HIGH)    
  {





    SIM900A.println("AT+CMGF=1");
    delay(1000);
    SIM900A.println("AT+CMGS=\"+8801679388394\"\r");
    delay(1000);

    SIM900A.println("Alert I need help....Asheesh ,Battalion No. 1233456 ");
    SIM900A.println((char)26);

    delay(10000);

  }
  else {


    delay(2000);


  }


}


我不明白这里出了什么问题。谁能告诉我这是什么问题?

module arduino gsm
1个回答
0
投票

首先检查您的SIM900A是否已正确初始化。您还需要检查GSM模块是否已检测到SIM卡。通常,这由板载LED指示,该LED每3秒后闪烁一次。以下代码用于向用户发送短信。

void sendSMS()
{
   SIM900A.println("AT+CMGF=1");
   delay(1000);

   SIM900A.println("AT+CMGS=\"+8801679388394\"\r");
   delay(1000); 

   SIM900A.print("Hello");
   delay(1000);

   SIM900A.println((char)26);     // sends ctrl+z end of message 
   delay(5000);
}

尝试此代码之前,请检查您是否已使用AT+COPS?连接到网络。打开串行监视器后,请确保已选择“ NL和CR都]”选项!

© www.soinside.com 2019 - 2024. All rights reserved.