GSM шилд
- Войдите на сайт для отправки комментариев
Ср, 12/06/2013 - 23:40
В общем, есть у меня шилд - 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()); }
В итоге ни чего не происходит, либо в окне терминала появляются различные крякозябри, как-будто не правильная кодировка.
Буду очень признателен, если кто-нибудь подскажет в чём дело.
Спасибо!
Перемычки у вас провильно установлены?
Всё по этому мануалу - http://www.elecfreaks.com/wiki/index.php?title=EFCom_GPRS/GSM_Shield
во первых, по умолчанию скорость может быть какая угодно (проходили). попробуйте менять от 9600 до 38400.
а во вторых, откуда уверенность что модем должен сам что-то отправить? может все таки послать ему для начала AT?
Я как раз про эту команду (AT) и говорю, в ответ на неё в терминал приходит всякий мусор, как-будто он ошибается с кодировкой.
Скорости пробовал менять, итог тот же приходит мусор, только выглядит иначе.
Будут ещё предложения?
Будут. Предположим, что стоит скорость 115200, тогда софтовый сериал попросту не тянет. Заливаете пустой скейтч в дуину (можно блинк) перставляете перемычки на хардовый UART на 0 и 1 выводы так что бы было RX -> RX, TX -> TX и пробуете. Если в ответ тишина значит что-то не так делаете.
Так... Значит теперь подключил, как посоветовал maksim в ответ тот же самый мусор, как на Mega260, так и на freeduino.
Кажется мне что это сам проц, он же sim900, ерундит, отсюда вопрос - если это он, то возможно ли его как-нибудь перешить или сделать reset?
Перемычки у вас провильно установлены?
А можете показать схематично, как должно быть правильно?
Такая же проблема - не могу достучаться до шилда. Скетч такой же, как в первом посте, подключено так:
пины 2,3 нано - пины 3,2 шилда (rx/tx)
земля нано - земля шилд
питание шилда - отдельное 5 в стабилизированного
ардуино подключено через усб к компьютеру
перемычки на шилде - swtx swrx
после включения шилд быстро ловит сеть и регистрируется
с монитора порта пробую посылать АТ команды - никакого ответа, тишина. все скорости перебрал, никакой разницы.
что я делаю не так?
Mega и Uno не работают с этим шилдом на 2 и 3 пинах. Это написано в заголовке файла SoftwareSerial
У меня заработало так:
RX и TX (1 и 2 пин на SoftSerPort) с шилда на 10 и 11 Arduino. ну а там или перемычками или изменив пины в инициализации
инициализируется:
SoftwareSerial mySerial(10, 11);