Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: В SIM900 не срабатывает команда AT+CIPSEND
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
BAG/ULG
Доброго времени суток. Пытаюсь с помощью 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 приглашения > не приходит.
Подскажите пожалуйста, что я делаю не так?
ivstech
В SIM300 и SIM508 после AT+CIPSTART надо дождаться CONNECT OK, здесь, очевидно, так же
Варяг
подай на всякий случай после п.3 AT+CIPCLOSE=1.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.