|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Мар 4, 2004 16:46:29 Возникла проблема, может кто чего посоветует. Работаю с COM портом через API под W2k. Требуется отслеживать короткие (~5мс) промежетки между байтами при приеме, что означает конец передаваемого пакета. Это сделано через SetCommTimeouts. Но на некоторых компах вот такая фигня получается, принимается пакет длиной N * Input FIFO Len Input FIFO Len - размер FIFO который устанавливается в свойствах COM порта (микросхемы UART), N - целое число. Т.е. если установлен размер FIFO = 14 байт (максимально возможный, а именно он установлен по умолчанию), то принимается 14/28/в редких случаях 42 байта. По мере уменьшения размера FIFO вероятность приема неполного пакета снижается. При размере FIFO = 1 или вообще отключенном ошибок не бывает. Так вот вопрос: можно ли как-нибудь программно (через API или еще как) управлять этой штукой? Менять соответствующие ключи в реестре не подходит, т.к. чтобы изменения вступили в силу требуется перезагрузка. А хотелось бы устанавливать свое значение, а по завершении работы программы востанавливать исходное. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.533 |