Общение с GPRS A6 (SIM900A)
- Войдите на сайт для отправки комментариев
Здравствуйте. Я новичок и столкнулся с некоторыми проблемами.
Работаю с китайской Arduino UNO R3 и GPRS A6 (SIM900A).
Хотел бы пообщаться с GPRS модулем напрямую. У меня нет никаких USB UART конвертеров, только Arduino. Проверю работу Arduino в режиме UART моста: замыкаю RST на GND, замыкаю RX и TX (петля). В Serial Monitor'е что-нибудь печатаю и отправляю — оно возвращается:
Через PuTTY свободно печатается в терминале. Т.е. как я понимаю, всё работает как надо.
Не убирая замыкания RST-GND в Arduino, я подключаю:
GND GPRS A6 к GND Arduino.
U_TXD GPRS A6 к RX Arduino.
U_RX GPRS A6 к TX Arduino.
Подключаю питание (MicroUSB зарядка от смартфона) к GPRS A6.
Модуль работает, сам успешо включается и регистрирует SIM-карту в сети.
На него можно даже позвонить (пойдут гудки), но при этом, в Serial Monitor'е не будет ничего. Если например, послать "AT", то в ответ тоже ничего, просто пустое окно. Однако при отсылке чего-либо (или при печатании в окно терминала PuTTY), на GPRS модуле моргает синий светодиод.
Что я делаю не так?
поменять местами rx и tx
в режиме моста надо
U_TXD GPRS A6 к TX Arduino.
U_RX GPRS A6 к RX Arduino.
Мда уж :), забавно вышло, спасибо, всё работает! Правда лучше Serial Terminal Arduino юзать, чем PuTTY.
Начал работать с SoftwareSerial, использую простой код (основанный на стандартном примере):
Далее печататю AT для проверки, модуль отвечает OK, но вместе с этим ответом порой приходит какой-то мусор:

Что это такое? Я также пробовал ставить 9600 бодрейт для двух Serial'ов, но тогда за место OK вообще приходит один квадратик (⸮).
Нашел команду AT+IPR?, в результате которой мне удалось разглядеть ответ 115200, т.е. бодрейт в модуле стоит именно такой.
Это SoftwareSerial. Поиск по форуму поможет. Ваша проблема слишком банальна чтоб повторятся. И подучится по теме, почитать форум Вам явно нужно.
Кэп подсказыввает, что SoftwareSerial на таких скоростях не работает.
Zero Tolerance
Зира, привет!
Фраза "фордоводы уроды" знакома? :)