Доброго времени суток.
Пишу работу с ИК портом и столкнулся со странной ситуацией. По даташиту ИК - полудуплекс (общий канал, прием\передача разделены по времени)
Передается команда (0x08) на внешнее устройство, которое должно на него ответить (0х09)

Ситуация первая - передатчик и приемник разрешены всегда, по показаниям осцилографа передается 0х08, от устройства принимается 0х09 (на входной ножке) - в регистр ничего не попадает (прерываний нет)

Ситуация вторая - Сразу после передачи блокирую передатчик и разрешаю приемник - слушаю канал, запрещаю приемник -передаю еще раз. По осцилографу в передаче возникает третье состояние - вместо нуля в промежутках между битами около 0,5. Внешнее устройство это не воспринимает и отвечает мусором (FF, FC,FE и прочее), но при этом мусор попадает в регистр.

Пробовал по разному играться с задержками и местами включения\выключения, наблюдал каждый раз одну из ситуаций.
В чем может быть причина такого косяка?