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

 
 
> GPRS непечатные символы, SIM300DZ не хочет их передавать
Nikitoc
сообщение May 21 2010, 09:59
Сообщение #1


Местный
***

Группа: Validating
Сообщений: 207
Регистрация: 14-01-09
Из: Днепропетровск
Пользователь №: 43 367



Всем здрасте. Вот столкнулся с такой проблемкой. Пытаюсь передать jpg картинку через GPRS. Делаю коннект, даю команду cipsend и передаю картинку побайтно (putchar'ом по 100 байт). Вот. Ну и заметил, что если в посылочке есть байтики до 0х30 (хотя не факт, что ИМЕННО ВСЕ байты до 0х30) то модуль эту посылочку некорректно передает. По крайней мере вместо SEND OK дает просто OK, да и на серваке картинка не сходится. Символ окончания посылки 0x1A я отлавливаю и как данные не передаю (вот еще, кстати, вопрос - как передать такой байт в роли данных?). При попытке передавать данные более 0х30 - все работает нормально.
Если это уже обсуждалось на форуме (а должно было) - просьба не пинать, а кинуть ссылочкой или апнотом. Я честно искал, но не нашел.

Сообщение отредактировал Nikitoc - May 21 2010, 10:01
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
mempfis_
сообщение May 21 2010, 10:22
Сообщение #2


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

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



Может стоит перевести передачу с бинарной в ascii-кодированную?
Траффик увеличится в 2 раза но зато в данных не будет таких символов которые интерпретировались-бы как управляющие.
Go to the top of the page
 
+Quote Post
Nikitoc
сообщение May 21 2010, 10:30
Сообщение #3


Местный
***

Группа: Validating
Сообщений: 207
Регистрация: 14-01-09
Из: Днепропетровск
Пользователь №: 43 367



Цитата(mempfis_ @ May 21 2010, 13:22) *
Может стоит перевести передачу с бинарной в ascii-кодированную?

Я извиняюсь. А как это сделать?
Go to the top of the page
 
+Quote Post
mempfis_
сообщение May 21 2010, 11:07
Сообщение #4


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

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



Цитата(Nikitoc @ May 21 2010, 13:30) *
Я извиняюсь. А как это сделать?


Я не имел ввиду перевести модем в режим передачи ascii-кодированной передачи!!!
Я вообще не знаком с этим модемом!!!

Имелось ввиду изменить формат передачи когда один бинарный байт кодируется 2мя ascii-символами.
Например бинарное число 0x69 передаётся как пара 0x36 0x39 (т.е. ascii-коды цифр 0x6 0x9)
0xAB передаётся как 0x41 0x42 (ascii-коды букв A cool.gif.
Таким образом гарантировано в сообщении не встретятся управляющие символы.

Сам пользуюсь модемами telit. Не встречал такого чтобы стек tcp/ip после установления связи с сервером через сокет не передавал некоторые бинарные данные.

Сообщение отредактировал mempfis_ - May 21 2010, 11:11
Go to the top of the page
 
+Quote Post



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

 


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


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