Программа не успевает опросить все каналы за интервал таймера (1 секунду). В результате очередной обработчик таймера вызывается из другого потока, в котором порт, очевидно, никто не открывал.
Отключите таймер при входе в обработчик, и будет вам счастье.




Ответить с цитированием