Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.04;
Скачать: CL | DM;

Вниз

Работа с com портами   Найти похожие ветки 

 
red_imp ©   (2006-10-12 17:47) [0]

Возникла проблема - нужно принимать данные с устройства которое подключено к сом порту и определенным образом обрабатывать эту информацию, с помощю демки которая шла с оборудованием принимает все нормально но при просмотре лога приема данные передавались в виде какойто абракадабры типа - "S.~~..#u" и т.д. Подскажите пожалуйста как организовать прием данных в читаемой форме.


 
Ketmar ©   (2006-10-12 17:50) [1]

настройки порта правильные?


 
guav ©   (2006-10-12 17:58) [2]

> с помощю демки которая шла с оборудованием принимает все
> нормально но при просмотре лога приема данные передавались
> в виде какойто абракадабры типа - "S.~~..#u" и т.д

Это наверное значит, что "S.~~..#u" - не какая-то абракадабра а правильные данные, с точки зрения протокола обмена ?


 
red_imp ©   (2006-10-12 18:06) [3]

Ketmar ©

Да вроде да.

guav ©  

> Это наверное значит, что "S.~~..#u" - не какая-то абракадабра
> а правильные данные, с точки зрения протокола обмена ?


Скорее всего только вот не знаю как перевести эти данные в форму которую я мог бы использовать, может какаято кодировка своя? или еще чтото никак не могу разобратся.


 
ANB ©   (2006-10-12 18:12) [4]


> Скорее всего только вот не знаю как перевести эти данные
> в форму которую я мог бы использовать

Может сначала почитать описание протокола обмена ?


 
red_imp ©   (2006-10-13 16:08) [5]

ANB ©

Да протокол там стандартный rs 485 в описании его нашел что:


1). Часто встречаются протоколы на основе ASCII-кода. Управляющие символы и данные передаются в виде обыкновенных ASCII символов. Посылка может выглядеть так:
В HEX виде:    3Ah 31h 32h 52h 53h 34h 38h 35h 0Dh
В ASCII виде:  ":" "1" "2" "R" "S" "4" "8" "5" /ПС/....
2). Можно организовать протокол с непосредственной передачей двоичных данных
3) Протокол может быть "чисто" двоичным, то есть без выделения специальных управляющих символов


Никогда с этим не работал, может ктото подскажет в каком направлении стоит дальше искать


 
atruhin ©   (2006-10-13 16:12) [6]

Это описание работы порта. Тебе нужно описание прикладного протокола, узнать у производителя оборудования.


 
red_imp ©   (2006-10-13 16:27) [7]

atruhin ©  

А если его нет тогда можно чтото сделать? Просто дали задние написать прогу которая будет снимать данные с контроллера, в описании устройства написано что работает через протокол rs 485. К производителю обратится довольно таки проблематично


 
Германн ©   (2006-10-13 17:04) [8]


> Подскажите пожалуйста как организовать прием данных в читаемой
> форме.

Принимать байты и выводить их с помощью IntToHex


 
Kolan ©   (2006-10-13 19:18) [9]

Возьми шпион LGComSpy++ - супер вешь для таких дел...


 
YurikGL ©   (2006-10-14 23:59) [10]


> А если его нет тогда можно чтото сделать? Просто дали задние
> написать прогу которая будет снимать данные с контроллера,
>  в описании устройства написано что работает через протокол
> rs 485. К производителю обратится довольно таки проблематично

Подавать на изделия различные команды, смотреть portmon-м что там ходит, анализировать, самому пробовать понять что там за протокол обмена. Вряд ли он очень сложный.


 
Германн ©   (2006-10-15 02:10) [11]


> Подавать на изделия различные команды, смотреть portmon-
> м что там ходит, анализировать, самому пробовать понять
> что там за протокол обмена. Вряд ли он очень сложный.
>

Имхо, для автора любой протокол сложный! Он пока умеет только читать текст.


 
medved_68 ©   (2006-10-15 18:46) [12]


> в описании устройства написано что работает через протокол
> rs 485.

Это не то...Необходимо описание прикладного протокола, который используется устройством + знание управляющих сигналов, при которых принимаемые данные верны... Как средство, при отсутствии описания, можно предложить схему по которой задействованы 3 порта на 1 устройство, на 2 программа - демка, а третий связывает порт демки с твоей программой, которая выкидывает то что пришло от демки на порт устройства и наоборот, при этом выводя данные например в Мемо в НЕХ виде. При помощи такой "прослойки" можно попытаться расколоть прикладной протокол, я не думаю что он очень сложный для понимания :))))


 
red_imp ©   (2006-10-16 15:42) [13]

Всем спасибо за ответы, буду пробовать


 
red_imp ©   (2006-10-16 15:42) [14]

Всем спасибо за ответы, буду пробовать


 
Германн ©   (2006-10-17 02:08) [15]


> medved_68 ©   (15.10.06 18:46) [12]
>
>Как средство, при
> отсутствии описания, можно предложить схему по которой задействованы
> 3 порта на 1 устройство, на 2 программа - демка, а третий
> связывает порт демки с твоей программой, которая выкидывает
> то что пришло от демки на порт устройства и наоборот, при
> этом выводя данные например в Мемо в НЕХ виде. При помощи
> такой "прослойки" можно попытаться расколоть прикладной
> протокол, я не думаю что он очень сложный для понимания

Иногда этого мало, имхо. Иногда нужно знать "In/Out" с точностью до одного байта. А ещё, иногда, нужно и работать напрямую с выводами микросхемы UART!
Пусть автор пробует. Результаты его проб можно будет обсуждать более конкретно.


 
medved_68 ©   (2006-10-18 11:57) [16]

Германн Да нет здесь явно не тот случай!!! Большинство такой байды работает даже без аппаратного управления потоком, ожидая тупого подтверждения приема набором ASCII кода + контрольная сумма и маркер конца. :))) А пока не пришло шлют как обалделые одно и то же. :))) Хотя может и ошибаюсь но в любом случае:

> Пусть автор пробует. Результаты его проб можно будет обсуждать
> более конкретно.

полностью одобрям и поддержам!!!! Ж)))



Страницы: 1 вся ветка

Текущий архив: 2007.03.04;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.059 c
15-1170930935
StriderMan
2007-02-08 13:35
2007.03.04
Замедление вращения Земли


15-1170866229
Diller_slomalsa_comp
2007-02-07 19:37
2007.03.04
boot.ini


1-1168833303
ORMADA
2007-01-15 06:55
2007.03.04
Манифест XP съедает часть формы


5-1149307416
МикроДИП
2006-06-03 08:03
2007.03.04
Компонент TrackBar и событие OnMouseUp...


15-1171022264
vajo
2007-02-09 14:57
2007.03.04
Spoolsv.exe