Вопрос по 16C550 и клонам - как определить конец передачи
Отправлено
Alechin 19 ноября 2008 г. 09:26
Как определить завершение передачи (опустошение сдвигового регистра) без его поллинга? Задача перевести обмен на RS485. Мне надо переключать направление. Раньше я (уже сталкивался) по прерыванию опустошения THR и всех переданных данных в цикле ожидал опустошения регистра. Сейчас имею 6 портов и низкую скорость в некоторых, т.е. "повиснуть" на несколько миллисекунд в обработчике не есть хорошо. При этом надо бы перевести все на работу через FIFO - что бы иметь возможность завершать прием по признаку истечения тайм-аута в FIFO. Теперь при FIFO в 64 байта для передачи будет еще хуже - придется ждать аж 9 байтов (при минимальном пороге в 8 байтов).