Форум: "Система";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
ВнизRS485 mode Найти похожие ветки
← →
S.A.S. (2002-12-13 12:08) [0]Привет всем. Помогите с решением такой проблемы. Необходимо работать с внешним устройством через COM порт по стандарту RS485. Работаю через CreateFile... Как правильно наложить маску на dcb.Flags, чтобы RTS сам переключался (Toggle mode). Посылаю устройству строку, оно отвечает (осциллографом смотрю), а считать ответ не могу - на ReadFile... прога виснит. Перебрал несколько готовых компонент - посылка отлично, а при приеме ни одно ихнее событие (типа onRxChar, onRxFlag) не наступает. Если читать сразу после отправки - опять виснем. Как правильно выставить timeout или может причина еще в чем-то ?
В общем как правильно читать данные из порта в RS485.
← →
wal (2002-12-13 12:46) [1]Забей на
> чтобы RTS сам переключался
- нормально оно н когда не работало, и переключай с пoмощью EscapeCommFunction. Включай перед передачей и выключай после окончания передачи. Окончание передачи можно определить таким образом - практически все известные мне аппаратные реализации RS485 выдают эхо, т.е. что передал, то и получаешь на входе. значит работаем так -
выставляем РТС,
передаем данные1,
принимаем данные1,
снимаем РТС,
принимаем данные2.
А насчет флагов - выставляй только проверку четности, если она конечно предусмотрена протоколом.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c