Проблема, если вдуматься, двух байт не стоила. Всего-то нужно – получить данные с пяти устройств. Вот интерфейс, вот его описание. Запустить цикл типа «пока не надоест» и в цикле же опрашивать эти пять устройств – чего уж проще. Но – некрасиво. Поскольку теоретически может возникнуть ситуация пропадания данных, особенно если устройств будет не пять, а хотя бы десять. Поэтому Вадик замутил хитрейшую систему на прерываниях, кладущую данные в общий буфер, использующую отдельные потоки для каждого устройства, семафоры, критические участки… в общем, всё, как у людей. Зато устройств эта система могла поддерживать очень много. Почти неограниченно. Заказчик, правда, утверждал, что их и пять-то бывает не всегда, но этот факт Вадика не волновал. Заказчик, как известно, никогда сам не знает, чего хочет. Программисту виднее. Сегодня заказчик говорит – пять, а завтра у него их пятьдесят пять. Так что на фиг. Ибо не фиг.