Столкнулся с проблемой выхода в интернет для вышеупомянутой сборки. Плата - Arduino Mega(китайская), шилд, тоже копия.. С платы можно звонить и слать смс..
- Код: Выделить всё • Развернуть
void DialVoiceCall()
{
Serial1.println("ATD + +79161234567;");//dial the number
delay(100);
Serial1.println();
}
- Код: Выделить всё • Развернуть
void SendTextMessage()
{
// Устанавливает текстовый режим для SMS-сообщений
Serial1.print("AT+CMGF=1\r");
delay(100); // даём время на усваивание команды
// Устанавливаем адресата: телефонный номер в международном формате
Serial1.println("AT + CMGS = \"+79161234567\"");
delay(100);
// Пишем текст сообщения
Serial1.println("789");
delay(100);
// Отправляем Ctrl+Z, обозначая, что сообщение готово
Serial1.println((char)26);
}
а вот с со следующим кодом результата нет.. "AT+SAPBR=1,1" - ответ ERROR.. плюс ко всему через терминал идет очень много мусора..
- Код: Выделить всё • Развернуть
void setup()
{
Serial.begin(19200); // USB port
Serial1.begin(19200); // serial port
delay(2500);
void setint()
{
Serial1.println("AT+CSQ");
delay(100);
ShowSerialData();
Serial1.println("AT+CGATT=1");
delay(100);
ShowSerialData();
Serial1.println("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\"");
delay(4000);
ShowSerialData();
Serial1.println("AT+SAPBR=3,1,\"APN\",\"internet.mts.ru\"");
delay(2000);
ShowSerialData();
Serial1.println("AT+SAPBR=3,1,\"USER\",\"mts\"");
delay(2000);
ShowSerialData();
Serial1.println("AT+SAPBR=3,1,\"PWD\",\"mts\"");
delay(2000);
ShowSerialData();
Serial1.println("AT+SAPBR=1,1");
delay(2000);
ShowSerialData();
Serial1.println("AT+HTTPINIT");
delay(2000);
ShowSerialData();
Serial1.println("AT+HTTPPARA=\"CID\",1");
delay(2000);
ShowSerialData();
Serial1.println("AT+HTTPPARA=\"URL\",\"http://pustota.su/d7t.php?c=ZAZ_276<=55.4&lg=31.7&v1=401&v2=402&v3=403&v4=404&v5=405&v6=406&v7=407&v8=408&v9=409&v10=410&v11=411&v12=412\"");
delay(2000);
ShowSerialData();
Serial1.println("AT+HTTPACTION=0");
delay(1000);
ShowSerialData();
Serial1.println("AT+HTTPTERM");
delay(1000);
ShowSerialData();
}
void ShowSerialData()
{
if (Serial1.available()) // if date is comming from softwareserial port ==> data is comming from gprs shield
{
while(Serial1.available()) // reading data into char array
{
buffer[count++]=Serial1.read(); // writing data into array
if(count == 64)break;
}
Serial.write(buffer,count); // if no data transmission ends, write buffer to hardware serial port
clearBufferArray(); // call clearBufferArray function to clear the storaged data from the array
count = 0; // set counter of while loop to zero
}
}
void loop() {
ShowSerialData();
if (Serial.available())
{
while(Serial.available()) // reading data into char array
{
buffer[count++]=Serial.read(); // writing data into array
if(count == 64)break;
}
clearBufferArray(); // call clearBufferArray function to clear the storaged data from the array
count = 0;
okornot();
setint();
}
}
терминал
- Код: Выделить всё • Развернуть
AT
OK
UHшAT+CSQ
+CSQ: 20,0
OK
TQQх1
AT+CGATT=1
ю
OK
APBR=3,1,"CONTYPE","GPRS"
AT+SAPBR=ымЧьPе‰,"internet.mts.ru"
AT+SAPBR=3,1,"APN","iояPBR=3,1,"USER","mts"
AT+SAPBR=3,1,"USER","mts"
ERROR
APBR=3,1,"PWD","mts"
AT+SAPBR=3,1,"PWDв,‘[Ч‰
ERROR
(%Iх1,1
)*ЉХAT+SAPBR=1<эяAT+HTTPINIT
ERROR
KD",1
AT+HTTPPARA="CID",1
ERROR
Iх"URL","http://pustota.su/d7t.php?c=ZAZ_276<=55.4&lg=31O=0
AT+HTTPPARA="URL","http://puыOMMнAT+HtяCЎ”%хI5TTPTERM
AT+HTTPTERM
ERROR
Питание внешнее, симка с интернетом(smart mini от мтс).. Выход в интернет нужен для передачи данных на сервер, пока в максимально простом виде.. но и это не идет.
Ваши предложения, Уважаемые..