Перейти к содержанию
    

В SIM900 не срабатывает команда AT+CIPSEND

Доброго времени суток. Пытаюсь с помощью SIM900 осуществить TCP соединение с сервером, с целью обмена данными по протоколу HTTP. Применяю следующий алгоритм:

1) Подаю питание на модуль

2) Жду пока он зарегистрируется в сети

3) Подключаю сервис GPRS командой AT+CGATT=1

4) Устанавливаю тип соединения (GPRS) командой AT+CIPCSGP=1,"internet.mts.ru","mts","mts"

5) Устанавливаю TCP соединение с сервером командой AT+CIPSTART="TCP","IP-адрес сервера","80"

6) Вхожу в режим передачи данных на сервер командой AT+CIPSEND

7) Жду от SIM900 приглашения к началу передачи данных (символ '>')

8) Отправляю HTTP-запрос вида:

 

GET http://адрес.ru/index.php?параметры

HTTP/1.0

Host: адрес.ru

признак конца HTTP-запроса (2 байта 0x0A)

 

9) Посылаю признак конца блока данных (0x1A)

10) Считываю данные, пришедшие от сервера

11) Жду от модуля сообщение CLOSED

12) Выполняю текущие операции

13) Переход к п. 5)

 

В принципе, алгоритм работает, но бывает, что после нескольких соединений происходит зависание на п. 7. Так еще, после отправки команды AT+CIPSEND приглашения > не приходит.

Подскажите пожалуйста, что я делаю не так?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...