Программируя для последовательного порта, в процессе ловли багов столкнулся с необходимостью опуститься на канальный уровень протокола.
Здесь у меня начались проблемы.
IOCTL_SERIAL_SET_BAUD_RATE 80 25 00 00 - это значит baud rate 9600. А вот 00 c2 01 00 - это оказывается 115200. Тут я методом тыка догадался.
А вот IOCTL_SERIAL_SET_TIMEOUTS 32 00 00 00 05 00 00 00 00 00 00 00 60 09 00 00 00 00 00 00 - это сколько? И каков диапазон допустимых значений? Читал MSDN - Setting Read and Write Timeouts for a Serial Device. Пишут что угодно, но нет ни одной цифры!!! И вообще как с этим всем правильно работать?