Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Чтение из COM-порта

18K
28 ноября 2006 года
maestro_ufa
11 / / 10.10.2006
Ребят, бросьте плз код рабочей процедуры чтения ком-порта.
Задача простая, - отправить пакет данных по RS232, дождаться пока придет ответный пакет и считать его.
Второй день бьюсь, весь МСДН и кучу форумов перелопатил - результат 0.
В порт данные пишутся нормально, нормально отрабатывает функция WaitCommEvent. Только вот ничего не читается!!!!
После того, как WaitCommEvent дожидается символа конца пакета данных, ReadFile ничего не читает.

Пробовал использовать компонент TComPort - он нормально читает данные, но с ним не получается реализовать функцию ожидания конца пакета. И вообще, не хочется пользоваться этим компонентом.

Буду бесконечно благодарен за работающую функцию или класс.
10K
29 ноября 2006 года
Vitaliy Boberman
34 / / 24.10.2006
В нете есть компонент TMS_Async32_v1.2 - работает хорошо
а еще посмотри сюда:
http://www.kamlit.ru/docs/journals/cd/cd23/off-line/pr/23/article_4.php.htm
18K
01 декабря 2006 года
Salivan
8 / / 04.08.2006
держи!
2.9K
07 декабря 2006 года
narcotic
41 / / 04.10.2004
Подскажите, пожалуйста, как работать с RS485? Буду признателен за наглядный пример :)
9.5K
20 декабря 2006 года
Borgir
97 / / 20.12.2006
Цитата: narcotic
Подскажите, пожалуйста, как работать с RS485? Буду признателен за наглядный пример :)



Насколько я сталкивался, устройства с интерфейсом RS-485 подключаются к компьютеру через конвертер (типа ADAM'а или ICPCON'а). И программа работает уже с простым СОМ-портом. Поэтому не вижу принципиальных отличий в программировании RS-232 и RS-485.

P.S. может я что не так понял, тогда прошу уточнить :)

P.P.S. кстати, поздравьте меня, это мое первое сообщение на этом форуме (только что зарегистрировался)

39K
23 апреля 2008 года
danilarff86
2 / / 23.04.2008
Абсолютно верно. Такой преобразователь можно собрать и самому. Для преобразования в RS-485 существуют специализированные микросхемы AMD485. По сути это оу для преобразования диф сигналов в уровни относительно общего провода. Также и в РС422, 423, только 485 - полудуплекс, а 422- полный дуплекс. Таким образом, 422 - это тот-же 232, только использует дифференциальные сигналы в линии передачи для большей помехоустойчивости. Используется в промышленности.
39K
23 апреля 2008 года
danilarff86
2 / / 23.04.2008
А 485-й не может одновременно принимать и передавать данные, так как полудуплекс. И скорее всего на это при программировании надо учитывать для избежания конфликтов использования линии.
479
23 апреля 2008 года
Ухух
142 / / 05.05.2006
Стандартные преобразователи типа ADAM4520 переключают направление с приема на передачу или по наличию передачи со стороны компа в линии , тогда им скорость переключателями говорим и они на прием потом сами переключаются
(тогда вообще ничего не надо делать - со стороны компа все выглядит как работа с 232) , или по сигналу RTS (тут немного придется повозиться - поставить в dcb управление rts).

Встроенные в порты 485 переключают направление по сигналу RTS того порта.

Про работу с COM и в этой ветке и в API в последние полтора месяца много написано и все расжевано .

В msdn надо только ReadFile WriteFile CreateFile SetCommState SetCommTimeouts PurgeComm SetupComm EscapeCommFunction и описание двух структур dcb и commtimeout и все! :))))
57K
11 сентября 2010 года
flatgad
4 / / 13.03.2010
Цитата: Ухух

Про работу с COM и в этой ветке и в API в последние полтора месяца много написано и все расжевано .

В msdn надо только ReadFile WriteFile CreateFile SetCommState SetCommTimeouts PurgeComm SetupComm EscapeCommFunction и описание двух структур dcb и commtimeout и все! :))))


Подскажите пожалуйста а как работать если скорость передачи 1.2 Мбит/с и поток идет непрерывный. Точнее как правильно принимать этот поток и записать на винчестер без потери информации или потерять но как можно меньше !! Заране сенкс !!!

90K
16 апреля 2013 года
Mons
1 / / 16.04.2013
maestro_ufa, Salivan поделитесь считкой из com в С++ Builder, плиз. Пасиб! Горю. Препод - зверюга.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог