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

 
 
> GE863-GPS, передача данных по GPRS через сокет
mempfis_
сообщение Dec 24 2008, 14:31
Сообщение #1


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Добрый день.
Есть модем GE863-GPS. Подскажите как наладить с помощью него приём и передачу бинарных посылок (просто данных вида 0x12, 0x34...).
написал простой скрипт который позволяет читать данные с сервера в текстовом режиме:

Код
def readsocket():

    # ##################################
    #print 'Context 1 configuration'
    res = MDM.send('AT+CGDCONT=1,"IP","internet"\r',0)
    res = MDM.receive(50)
    print res
    # ##################################

    # ##################################
    #print 'Socket1 configuration'
    res = MDM.send('AT#SCFG=1,1,1000,120,1200,50\r',0)
    res = MDM.receive(50)
    print res
    # ##################################    

    # ##################################
    #print 'Context 1  activation'
    res = MDM.send('AT#SGACT=1,1\r',0)
    res = MDM.receive(50)
    print res
    # ##################################


    # ##################################
    #print 'Get Socket dial'
    res = MDM.send('AT#SD=1,0,13,"192.43.244.18",255,0,0\r',0)
    res = MDM.receive(50)
    print res
    #print '\n'
    # ##################################


Меняю сервер на другой (который передаёт бинарные данные) бриходит какаято белеберда в которой ни малейшего намёка на исходные данные (должно быть 0xAA, 0x01 а приходят буквы которые никак связать с исходной посылкой не удаётся)

Покопался в ат-командах нашёл такую:
АТ#SCFGEXT=<connId>,
<srMode>,
<dataMode>,
<keepalive>
[,<unused_A>
[,<unused_B>]]

где <dataMode>: “data view mode” presentation format
0 - data represented as text (default)
1 - data represented as sequence of hexadecimal numbers (from 00 to FF)

Кто может подсказать модем вообще поддерживает эту команду (у меня постоянно выдаёт на неё error) и этот dataMode определяет режим передачи данных в модеме или просто режим отображения в терминале?

Буду благодарен за любую помощь в этом вопросе smile.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
mempfis_
сообщение Dec 25 2008, 08:04
Сообщение #2


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Неужели никто никогда не передавал или принимал с помощью GPRS-модема данные через сокеты? 07.gif
Интересует как это можно сделать с помощью данного модема или где об этом почитать (в доках телита ничего по этому поводу не нашёл кроме неподдерживаемой ат-команды)
Go to the top of the page
 
+Quote Post
bolmoe
сообщение Dec 26 2008, 13:39
Сообщение #3


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

Группа: Свой
Сообщений: 121
Регистрация: 5-04-06
Из: Рязань
Пользователь №: 15 830



Цитата(mempfis_ @ Dec 25 2008, 12:04) *
Неужели никто никогда не передавал или принимал с помощью GPRS-модема данные через сокеты? 07.gif
Интересует как это можно сделать с помощью данного модема или где об этом почитать (в доках телита ничего по этому поводу не нашёл кроме неподдерживаемой ат-команды)


Скорее всего сервер производит преобразование символов автоматически, не преобразовывает только символы латиницы A-Z, a-z и цифры 0-9 и еще некоторые символы (точно не помню). Попробуй перекодировать при получении данных, к примеру байт = 0х00 будет преобразован сервером в %00, 0х01 - %01, % - %25 и т.д., тебе надо их обратно. Другой способ чтения, не через сёкет, а через FTP соединение, тогда преобразовывать не надо, читает бинарники как положено.
Почитай книжку к примеру по PHP, там есть немного про кодирование и декодирование - то, что делает сервер автоматически.
В браузере при поиске через яндекс или другой поисковик наверняка видел что руский текст запроса преобразовывается в ..... к пр. "поиск"="%EF%EE%E8%F1%EA" - просто заменяет на шестнадцатиричные значения только в текстовом виде, соответственно объем файла вырастает....
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Dec 26 2008, 16:00
Сообщение #4


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Оказалось что приходит именно то что нужно, просто терминал не отображал бинарные данные.
А вообще стоит мне почитать об этих соккетах и принципе передачи данных через них. Буду благодарен если дадите пару ссылок на соответствующую литературу smile.gif
Или в двух словах расскажете к какой области это относится smile.gif
(Для меня модем это микросхема которой я управляю - учился на электронщика - а по каким протоколам она там передаёт это для меня тёмный лес 07.gif )
Go to the top of the page
 
+Quote Post
bolmoe
сообщение Dec 27 2008, 10:51
Сообщение #5


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

Группа: Свой
Сообщений: 121
Регистрация: 5-04-06
Из: Рязань
Пользователь №: 15 830



Цитата(mempfis_ @ Dec 26 2008, 20:00) *
Оказалось что приходит именно то что нужно, просто терминал не отображал бинарные данные.
А вообще стоит мне почитать об этих соккетах и принципе передачи данных через них. Буду благодарен если дадите пару ссылок на соответствующую литературу smile.gif
Или в двух словах расскажете к какой области это относится smile.gif
(Для меня модем это микросхема которой я управляю - учился на электронщика - а по каким протоколам она там передаёт это для меня тёмный лес 07.gif )



))))) Сам такой же))))) электронщик))). Честно говоря, по поводу литературы - со всего понемногу. Почитал из инета по поводу TCP/IP, PHP5(книгу купил), сети.... - вроде немного понятнее стало. Со всем остальным познакомился по мере решения задачи, которую должен выполнять терминал GT863-PY.
Спрашивай, если что, если знаю - подскажу. Я так тут по форуму полазил, тех, кто на телит подсел, не очень много.... На майл кидай вопросы bolmoe mail ru, а там потом можно и по аське
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 15:58
Рейтинг@Mail.ru


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