Ошибка Sim900 включена по команде AT НА+HTTPINIT
Я хочу отправлять данные на мой php-сервер с помощью модуля sim900, но я не могу инициализировать службу http на sim900.
код:
#include <SoftwareSerial.h>
SoftwareSerial gprsSerial(8, 9);
void setup()
{
gprsSerial.begin(9600);
Serial.begin(9600);
Serial.println("Con");
delay(2000);
Serial.println("Done!...");
gprsSerial.flush();
Serial.flush();
// Посмотрите, готова ли SIM900
gprsSerial.println("AT");
delay(1000);
toSerial();
// SIM-карта вставлена и разблокирована?
gprsSerial.println("AT+CPIN?");
delay(1000);
toSerial();
// Зарегистрирована ли SIM-карта?
gprsSerial.println("AT+CREG?");
delay(1000);
toSerial();
// Подключен ли GPRS?
gprsSerial.println("AT+CGATT?");
delay(1000);
toSerial();
// Проверьте уровень сигнала
gprsSerial.println("AT+CSQ ");
delay(1000);
toSerial();
// Установите тип подключения к GPRS
gprsSerial.println("AT+SAPBR=3,1,\"Contype\",\"GPRS\"");
delay(2000);
toSerial();
// Установите APN
gprsSerial.println("AT+SAPBR=3,1,\"APN\",\"web\"");
delay(2000);
toSerial();
// Включить GPRS
gprsSerial.println("AT+SAPBR=1,1");
delay(10000);
toSerial();
// Проверьте правильность подключения и получите свой IP-адрес
gprsSerial.println("AT+SAPBR=2,1");
delay(2000);
toSerial();
}
void loop()
{
// инициализировать службу http
gprsSerial.println("AT+HTTPINIT");
delay(2000);
toSerial();
// установите значение параметра http
// ToDO : отправить динамическое значение
gprsSerial.println("AT+HTTPPARA=\"URL\",\"http://www.fohoraayo.000webhostapp.com/?lat=1111&lon=1111\"");
delay(4000);
toSerial();
// установите тип действия http 0 = ПОЛУЧИТЬ, 1 = СООБЩЕНИЕ, 2 = ЗАГОЛОВОК
gprsSerial.println("AT+HTTPACTION=0");
delay(6000);
toSerial();
// прочитать ответ сервера
gprsSerial.println("AT+HTTPREAD");
delay(1000);
toSerial();
//gprsSerial.println("");
gprsSerial.println("AT+HTTPTERM");
toSerial();
delay(300);
gprsSerial.println("");
delay(10000);
}
void toSerial()
{
while(gprsSerial.available()!=0)
{
Serial.write(gprsSerial.read());
}
}
результат:
Config SIM900...
Done!...
AT
OK
AT+CPIN?
+CPIN: READY
OK
AT+CREG?
+CREG: 0,1
OK
AT+CGATT?
+CGATT: 1
OK
AT+CSQ
+CSQ: 31,0
OK
AT+SAPBR=3,1,"Contype","GPRS"
OK
AT+SAPBR=3,1,"APN","web"
OK
AT+SAPBR=1,1
ERROR
AT+SAPBR=2,1
+SAPBR: 1,1,"xx.xxx.x.x"
OK
AT+HTTPINIT
ERROR
AT+HTTPPARA="URL","http://www.fohoraayo.000webhostapp.com/?lat=AT+HTTPACTION=0
ERROR
AT+HTTPREAD
ERROR
AT+HTTPTERM
ERROR
@Suc333l, 👍3
Обсуждение1 ответ
▲ 1
Для меня ваш код работает просто очаровательно. но измените
gprsSerial.begin(9600)
чтобы
gprsSerial.begin(4800)
,
@heshan deeyagaha
Смотрите также:
- Проблема с получением SMS - GSM-модуль Arduino Uno и SIM900A
- SIM900 3G? Или SIM900A умеет подключаться к 3G?
- Мини-модем SIM900a, IMEI 0, помощь с контактами TX RX
- Как получить данные из базы данных моего сервера в переменную в моем Arduino?
- Как отправить команду AT на sim800l с помощью SoftwareSerial
- SIM800L не регистрируется в сети
- Как отправлять сообщения на несколько номеров с помощью модуля Arduino uno и SIM800?
- Модуль SIM808 GSM работает нормально, GPS не работает (нет сообщения о готовности GPS при включении питания)
Наконец-то я понял! Мой модуль sim900 не поддерживает HTTP., @Suc333l
Вы можете попробовать использовать команды TCP/IP для установления соединения и просто отправить строку HTTP., @Paul