Вверх ↑
Разработчик
Ответов: 26158
Рейтинг: 2127
#1: 2011-12-09 20:30:53 ЛС | профиль | цитата
Леонид писал(а):
вполне может быть ситуация, когда в буфере только часть передаваемой информации и поступила команда на чтение

Не будет такого, если правильно рассчитать время опроса порта. Оно должно быть больше, чем макимально отведенное время на чтение всей предполагаемой посылки.
Леонид, я так полагаю, что тут портянки больше 255 байт читаться не будут, вот тогда, если будут, то и надо использовать накопитель и искать конец посылки.
------------ Дoбавленo в 20.24:
Леонид писал(а):
СОМ не самый быстрый в компьютере

О Боже! Народ! Почитайте теорию. Система не дает нам читать порт напрямую, и никогда не даст. Она не работает в реальном времени с пользователем, да и устройствами тоже. Все контроллеры моста работают на аппаратном уровне через DMA (думаю, объянять не надо, что это такое). Драйвер устройства выдает контроллеру определенную команду и параметры команды, в которых и содержится необходимый адрес DMA, после чего переходит в режим ожидания прерывания от устройства. Это и дает возможность работать с реалтайм устройствами на больших скоростях обмена
------------ Дoбавленo в 20.31:
Короче, ну вас всех в пень. Делайте, что хотите. Я больше никогда не буду выступать по этой теме. Считайте что, вы все правы, а я сливаюсь
карма: 22

0