ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
18 мая
255155 Топик полностью
koyodza (23.05.2011 14:14, просмотров: 139) ответил ++ на Код ошибки есть ? GetLastError() ClearCommError() Вероятнее всего, неправильная настройка dcb...
есть пару скользких моментов 1. DCB.BaudRate = 115200; // Current baud rate Положено передавать CBR_115200, а не 115200, хотя CBR_115200 и равняется именно 115200, но в одних ОС (w98 например) Вы можете передать например 115100 и всё будет работать, а в других (ХР/2К) это приведёт к ошибке. 2. DCB.XonLim=4; // Transmit X-ON threshold DCB.XoffLim=16; // Transmit X-OFF threshold DCB.XonChar=0x11; // Tx and Rx X-ON character DCB.XoffChar=0x13; довольно спорны. В ХР установка этих значений иногда приводит к невозможности инициализации порта, поэтому я просто оставляю их по-умолчанию (вызываю ::GetCommState() перед заполнением нужных полей DCB) 3. Управление DTR и RTS может различаться в зависимости от их использования