Пример программы для ARDUINO для общения с SIM800 через Serial порт

#include <SoftwareSerial.h>

uint32_t timer = 0;
uint32_t timer1 = 0;
uint32_t timer2 = 0;

// создаём объект mySerial и передаём номера управляющих пинов RX и TX
SoftwareSerial SIM800(2, 3);

String TextSendSIM800 = "";
String TextResvSerial = "";

void setup(){

Serial.begin(9600);
SIM800.begin(9600);
Serial.println("START OK");
delay(500);

}

void loop(){

ReadSIM800();
ReadSerial();

if(millis() - timer >= 10){
    timer = millis();

    //ReadSerial();
  }

if(millis() - timer1 >= 500){
    timer = millis();
  }

if(millis() - timer2 >= 1000){
    timer = millis();
  }

}

void ReadSIM800(){
if(SIM800.available()){
      TextSendSIM800 = SIM800.readString();
Serial.println(TextSendSIM800);
  }

}

void ReadSerial(){
if(Serial.available()){
      TextResvSerial = Serial.readString();
SIM800.println(TextResvSerial);
}

}

/*
+CMTI: "ME",3 // что пришло СМС
AT+CMGR=3 // запрос СМС

+CMGR: "REC UNREAD","+45345345",,"24/11/02,15:08:51+12"
Status Alert

OK // ответ о СМС

strncmp(command, "STATUS ALERT", 12);
*/


Информация на сайте не является публичной офертой, информацию уточняйте по электронной почте. Консультации и техническая поддержка осуществляется только по электроноой почте gpslife@yandex.ru; Материал (сайт/статьи) может содержать не точности, содержать тексты и материалы которые могут генерировать ИИ/нейронные сети. Ресурс (сайт) содержит рекламные материалы.