GSM шилд

AlexSMGr54
Offline
Зарегистрирован: 19.12.2012

В общем, есть у меня шилд - EfCom v1.2 и две разных ардуинки - Arduino Mega 2560 r3 и Freeduino(AtMega328).

У меня ни как не получается завести этот шилд ни на одной ни на другой плате.

Пользуюсь этим кодом:

//Serial Relay - Arduino will patch a 
//serial link between the computer and the GPRS Shield
//at 19200 bps 8-N-1
//Computer is connected to Hardware UART
//GPRS Shield is connected to the Software UART 
 
#include <SoftwareSerial.h>
 
SoftwareSerial mySerial(2, 3);
 
void setup()
{
  mySerial.begin(19200);               // the GPRS baud rate   
  Serial.begin(19200);                 // the GPRS baud rate   
}
 
void loop()
{
  if (mySerial.available())
    Serial.write(mySerial.read());
  if (Serial.available())
    mySerial.write(Serial.read());  
 
}

В итоге ни чего не происходит, либо в окне терминала появляются различные крякозябри, как-будто не правильная кодировка.

Буду очень признателен, если кто-нибудь подскажет в чём дело.

Спасибо!

maksim
Offline
Зарегистрирован: 12.02.2012

Перемычки у вас провильно установлены?

AlexSMGr54
Offline
Зарегистрирован: 19.12.2012
__Alexander
Offline
Зарегистрирован: 24.10.2012

во первых, по умолчанию скорость может быть какая угодно (проходили). попробуйте менять от 9600 до 38400.

а во вторых, откуда уверенность что модем должен сам что-то отправить? может все таки послать ему для начала AT?

AlexSMGr54
Offline
Зарегистрирован: 19.12.2012

Я как раз про эту команду (AT) и говорю, в ответ на неё в терминал приходит всякий мусор, как-будто он ошибается с кодировкой.

Скорости пробовал менять, итог тот же приходит мусор, только выглядит иначе.

Будут ещё предложения?

maksim
Offline
Зарегистрирован: 12.02.2012

Будут. Предположим, что стоит скорость 115200, тогда софтовый сериал попросту не тянет. Заливаете пустой скейтч в дуину (можно блинк) перставляете перемычки на хардовый UART на 0 и 1 выводы так что бы было RX -> RX,  TX -> TX и пробуете. Если в ответ тишина значит что-то не так делаете.

AlexSMGr54
Offline
Зарегистрирован: 19.12.2012

Так... Значит теперь подключил, как посоветовал maksim в ответ тот же самый мусор, как на Mega260, так и на freeduino.

Кажется мне что это сам проц, он же sim900, ерундит, отсюда вопрос - если это он, то возможно ли его как-нибудь перешить или сделать reset?

mmklok
Offline
Зарегистрирован: 20.07.2013

maksim пишет:

Перемычки у вас провильно установлены?

А можете показать схематично, как должно быть правильно?

com
Offline
Зарегистрирован: 06.09.2013

Такая же проблема - не могу достучаться до шилда. Скетч такой же, как в первом посте, подключено так:

пины 2,3 нано - пины 3,2 шилда (rx/tx)

земля нано - земля шилд

питание шилда - отдельное 5 в стабилизированного

ардуино подключено через усб к компьютеру

перемычки на шилде - swtx swrx

после включения шилд быстро ловит сеть и регистрируется

с монитора порта пробую посылать АТ команды - никакого ответа, тишина. все скорости перебрал, никакой разницы.

что я делаю не так?

STALKER1204
Offline
Зарегистрирован: 28.09.2015

Mega и Uno не работают с этим шилдом на 2 и 3 пинах. Это написано в заголовке файла SoftwareSerial

У меня заработало так:

RX и TX (1 и 2 пин на SoftSerPort) с шилда на 10 и 11 Arduino. ну а там или перемычками или изменив пины в инициализации

инициализируется: 

SoftwareSerial mySerial(10, 11);