реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Передача данных по TCP, не могу понять, Передача данных по TCP, не могу понять
unKind
сообщение May 13 2011, 10:46
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 3-02-08
Пользователь №: 34 712



Здравствуйте нужно перередаваты данные по TCP / IP, работаю с модулями sim300C, Sim300d.
С одной стороны стандартный симкомовський кит с другой программа server.exe, скачал с сайта Гаммы. Программа работает, проверял клиентом написанным на С #.
При соединении с сервером с кита после команды
at + cipstart = "tcp", "46.211.75.141", "2020"
получаю только слово ОК, но не получаю CONNECT OK. И не могу передавать данные. в чем ошибка? smile3046.gif

Call Ready
13:44:24
at

OK
13:44:26
at+cgatt=1

OK
13:44:31
at+cipcsgp=1,"www.kyivstar.net"

OK
13:44:35
at+cdnsorip=0

OK
13:44:38
at+cstt

OK
13:44:41
at+ciicr
13:44:43

OK
13:44:46
at+cifsr

178.137.232.20
13:44:49
at+cipstart="tcp","46.211.75.141","2020"

OK
13:44:58

Сообщение отредактировал unKind - May 13 2011, 10:48
Go to the top of the page
 
+Quote Post
unKind
сообщение May 13 2011, 12:37
Сообщение #2





Группа: Новичок
Сообщений: 6
Регистрация: 3-02-08
Пользователь №: 34 712



Использую котрактную карточку Киевстар.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение May 13 2011, 13:39
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(unKind @ May 13 2011, 14:46) *
При соединении с сервером с кита после команды
at + cipstart = "tcp", "46.211.75.141", "2020"
получаю только слово ОК, но не получаю CONNECT OK. И не могу передавать данные. в чем ошибка? smile3046.gif

"OK" - команда принята. А дальше нужно ждать установления соединения. Может быть, сервер недоступен ? Порт не проброшен ? В любом случае - ждать результата ("OK" - не результат, это лишь подтверждение приема команды). "CONNECT FAIL" - не смог соединиться, тогда копать дальше (попробовать с каким-нибудь другим сервером, хоть с google.com по порту 80). Ждать надо достаточно долго, уж 10-15 секунд таймаут это как минимум, я бы предложил секунд 30.
Go to the top of the page
 
+Quote Post
shootnik911
сообщение May 13 2011, 13:54
Сообщение #4





Группа: Участник
Сообщений: 5
Регистрация: 23-03-11
Пользователь №: 63 819



Я бы добавил проверку AT+CGATT? чтобы убедится что он действительно в 1.
Разве не надо использовать AT+CGDCONT для определения PDP контекста (APN, login, password) для оператора?
И точно ли сервер на этом порту принимает соединения извне?


Go to the top of the page
 
+Quote Post
rx3apf
сообщение May 13 2011, 14:00
Сообщение #5


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(shootnik911 @ May 13 2011, 17:54) *
Я бы добавил проверку AT+CGATT? чтобы убедится что он действительно в 1.

А я ее вообще вместе с +cipstart сунул, потому как отваливалось иногда...
Цитата
Разве не надо использовать AT+CGDCONT для определения PDP контекста (APN, login, password) для оператора?

Можно и через +cipcsgp
Цитата
И точно ли сервер на этом порту принимает соединения извне?

О ! Потому при сомнениях надо попробовать сунуться куда-нибудь на общедоступный сервер. Но для начала хоть ответа дождаться...
Go to the top of the page
 
+Quote Post
demaven
сообщение May 15 2011, 04:37
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 108
Регистрация: 10-05-05
Из: Киргизия Бишкек
Пользователь №: 4 886



У меня при обмене внутри одного сотового оператора по ТСР ожидание ответа доходит до 5 минут
Go to the top of the page
 
+Quote Post
unKind
сообщение May 15 2011, 16:07
Сообщение #7





Группа: Новичок
Сообщений: 6
Регистрация: 3-02-08
Пользователь №: 34 712



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

Теперь нужно отслежывать состояние подключения. Как ето делать удобно? какие команды использовать?
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение May 15 2011, 19:05
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Вывод DCD в "прозрачном" режиме. Проще некуда.
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Jul 30 2011, 13:41
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Столкнулся с похожей проблемой как у автора (sim900 8-ая прошивка):
Код
AT+CGATT=1
OK
AT+CGREG?
+CGREG: 0,1
OK
AT+CIPCSGP=1,"internet.life.com.by"
OK
AT+CSTT
OK
AT+CIICR
OK
AT+CIFSR
109.126.166.74
AT+CIPSTART="TCP","***.***.***.***","80"
OK
Жду минуту, затем
AT+CIPCLOSE
CLOSE OK - т.е. соединение было установлено???
AT+CIPSHUT
SHUT OK
И повторяю все снова.
Даже перезагрузка с отключением питания иногда не помогает...
CONNECT OK не приходит около 1-5 раз, затем все хорошо.
Пытался найти зависимость: звонил, получал/отправлял SMS во время GPRS-передачи, затем заново переподключался. Но зависимости от каких-либо действий не заметил, один раз из двадцати CONNECT OK не приходит...
Что можно придумать?
Спасибо.

Сообщение отредактировал Alt.F4 - Jul 30 2011, 15:08
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение Jul 30 2011, 14:05
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Кстати тоже вопросик в тему
Зачем использовать вот эти команды?

AT+CSTT
OK
AT+CIICR
OK
AT+CIFSR

Если работает даже так?
AT+CIPCSGP=1,"internet.life.com.by"
OK
AT+CIPSTART="TCP","***.***.***.***","80"
OK
Т.е. только для контроля? APN вводится через AT+CIPCSGP, а AT+CIPSTART поднимает соединение автоматом . Или нет?
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Jul 30 2011, 14:12
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Цитата
Зачем использовать вот эти команды?
AT+CSTT
AT+CIICR
AT+CIFSR
Для инициализации PDP-контекста, запуска GPRS-соединения и получения IP-адреса.

Попробовал выйти из положения поста #9, чудеса прямо какие-то...
Код
AT+CIPSTART="TCP","***.***.***.***","80"
OK                    - не дождались CONNECT OK, но попробуем дальше
AT+CIPSEND
ERROR                - установим соединение еще раз
AT+CIPSTART="TCP","***.***.***.***","80"
ERROR
ALREADY CONNECT        - хм, уже законнектились???
AT+CIPSEND
ERROR                - значит нет...
Что же делать? sad.gif

Сообщение отредактировал Alt.F4 - Jul 30 2011, 14:20
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение Jul 30 2011, 14:31
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Цитата(Alt.F4 @ Jul 30 2011, 18:12) *
Для инициализации PDP-контекста, запуска GPRS-соединения и получения IP-адреса.

Ну так оно и так неплохо работает в 2 команды вместо 5 !!! Мне казалось что запуском AT+CIPCSGP и AT+CIPSTART все инициализации и подключения автоматом происходят.

По поводу вашей проблемы
А дольше подождать не резон? Попробуйте законектица просто на ya.ru
Кстати а почему вы не устанавливаете AT+CIPMODE ? Или он раньше установлен?

Сообщение отредактировал MKdemiurg - Jul 30 2011, 14:32
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Jul 30 2011, 15:04
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Цитата
Ну так оно и так неплохо работает в 2 команды вместо 5 !!! Мне казалось что запуском AT+CIPCSGP и AT+CIPSTART все инициализации и подключения автоматом происходят.
SIM900_TCPIP_Application Note_V1.02.pdf
Цитата
По поводу вашей проблемы. А дольше подождать не резон?
Пробовал дольше, CONNECT OK не приходит. Дело 100% в модеме или в оборудовании опсоса, сервер всегда доступен.
Цитата
Кстати а почему вы не устанавливаете AT+CIPMODE ? Или он раньше установлен?
Я использую непрозрачный режим.

Сообщение отредактировал Alt.F4 - Jul 30 2011, 15:06
Go to the top of the page
 
+Quote Post
ap77
сообщение Jul 30 2011, 15:23
Сообщение #14


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 18-01-11
Из: Новосибирск
Пользователь №: 62 313



Цитата(Alt.F4 @ Jul 30 2011, 20:41) *
Столкнулся с похожей проблемой как у автора (sim900 8-ая прошивка):
...
Спасибо.

Предлагаю проверять
AT+CIPSTATUS
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Jul 30 2011, 15:38
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Цитата
Предлагаю проверять AT+CIPSTATUS
Проверять можно, только смысл?

Ошибка плавающая, и потестить все довольно сложно, уже полчаса пытаюсь повторить сценарий, но безуспешно...
Может секрет в паузах между ответом модема и следующей командой? Было 100мс, увеличил местами до 200/300мс.

Сообщение отредактировал Alt.F4 - Jul 30 2011, 15:55
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 20:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01478 секунд с 7
ELECTRONIX ©2004-2016