Russian Qt Forum
Ноябрь 23, 2024, 20:34 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Формат передачи данных ASCII и BINARY  (Прочитано 6823 раз)
zalivaha
Гость
« : Март 17, 2010, 12:38 »

Прибор подключается через компорт, и работает как сервер, синхронная передача данных.
из redmi:
Синтаксис запроса ASCII:
[<LF>]%R1Q,<RPC>[,<TrId>]:[<P0>][,<P1>,...]<Term>
Дополнительные элементы в скобках []. Угловые скобки<> окружают названия или описания. У этих названий есть переменная значения в зависимости от их типов и значений. Сами угловые скобки не часть переданного текста.Символы, не окруженные скобками, являются буквальным текстом и являются частью протокола.
Запрос: %R1Q, 2108:1000,1^m
Возможный ответ может быть следующие: %R1P, 0,0:0,0.9973260431694,1.613443448007,1.3581^m
Строка терминатора (заданный по умолчанию CR/LF).

Используя библиотеку QSerialDevice, удалось наладить связь в формате ASCII.
вопрос: \x0A%R1Q,5011:\x0D\x0A
ответ : %R1P, 0,0:0,27.596000000001
Но всегда хочется большего.

из redmi: Начиная с Выпуска 2.00 клиент может сделать запросы в двоичном формате, который ускоряет коммуникацию примерно до 40-50 %.
К сожалению про BINARY это вся инфа.

Какие есть соображения как установить связь в BINARY формате?
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #1 : Март 17, 2010, 14:21 »

Цитировать
Используя библиотеку QSerialDevice, удалось наладить связь в формате ASCII.
Вообще-то порт работает в этой библе в бинарном режиме всегда!
Так задумано чтобы не обрабатывать всякие там символы и т.п. , т.е. что пошлете в порт - то и примете, без разницы какие там символы будут.
т.е. для драйвера порта символ будет просто рассматриваться как число в диапазоне от 0 до 255 Улыбающийся

Цитировать
Какие есть соображения как установить связь в BINARY формате?
Это нужно смотреть"бинарный" протокол обмена вашего клиента. т.е его описание.
Записан

ArchLinux x86_64 / Win10 64 bit
zalivaha
Гость
« Ответ #2 : Март 17, 2010, 15:00 »

Уфф обрадовал!!! Т.е. возможно уже связь установлена в бинарном формате, так это здорово!!!

К великому сожалению описания "бинарного" протокола обмена нет.
Тогда как установить связь в формате ASCII?

Есть родная библиотека для работы с прибором но тока не весь функционал реализован, полная реализация библиотеки стоит неприлично дорого.
Можно ли прослушать обмен данными в разных форматах родной библиотеки с прибором? пойду погуглю.
Эх непонятки. Непонимающий
Записан
zalivaha
Гость
« Ответ #3 : Март 19, 2010, 11:18 »

ИДЕЙ НЕТ?
ИДЕЙ НЕТ!
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #4 : Март 19, 2010, 11:26 »

Непонятна суть проблемы

если проблнма в :
Цитировать
Можно ли прослушать обмен данными в разных форматах родной библиотеки с прибором? пойду погуглю.
То есть для винды программы-снифферы COM портов. Они в большинстве платные (но можно кряк найти:))

С помощью этих снифферов можно "прослушать" обмен данными между каким либо приложением и девайсом , которыми они обмениваются через ком порт.
Это часто выручает если нужно "прощупать" какой-нить закрытый протокол обмена для которого бесплатная спецификация закрыта Улыбающийся

Гуглите.
« Последнее редактирование: Март 19, 2010, 11:31 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
zalivaha
Гость
« Ответ #5 : Март 21, 2010, 16:13 »

Господа профессионалы помогите плиз разобраться с форматом, которые некие разработчики назвали BINARY.
протокола обмена ASCII в первом посте описан, а на бинарный нет описания.

Как его раскурить. Совсем не читабельный. марсианский пля...

Протоколы:
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.088 секунд. Запросов: 22.