Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: драйвер LPT в WinXP
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
_lukash_
Сделал заглушку на LPT порт (для тестирование LPT) - сначала она принимает данные с Data и Control регистров, а потом по 4 бита возвращает эти данные через Status регистр.

Когда заглушка записывает информацию в Status регистр, драйвер LPT в WinXP пытается что-то передать внешнему устройству через Control регистр. И этим сбивает мою посылку заглушке (на машине программа на Delphi, которая через библиотеку inpout32.dll работает с LPT портом).
Эта проблема проявляется при разных режимах работы LPT.

Чтот похожее на мою проблему нашел тут:
http://www.pcports.ru/articles/5.php
(в конце статьи)

Но там эта проблема решена небыла

Может кто решал эту проблему - подскажите как отключить вмешательство LPT драйвера в WinXP при передаче данных через Control регистр.
sergeeff
остановить spooler печати (net stop spooler), вывести свои данные в порт, снова запустить spooler (net start spooler)
_lukash_
2 sergeeff
Службу остановил - но результат тот же...
zhilik
Лучше вообще без LPT делать устройства.
На современных материнках такого порта уже нет, в ноутах давно нету.
rezident
UserPort не пробовали использовать?
_3m
Цитата(_lukash_ @ Jan 22 2009, 18:45) *
...
Может кто решал эту проблему - подскажите как отключить вмешательство LPT драйвера в WinXP при передаче данных через Control регистр.

Попробуйте установить в настройках порта:
Control Panel->System Properties->Device manager->ECP Printer Port (LPTx)->Port Settings
снять галку "Enable legacy Plug and Play detection"
Filter Resource method - выбрать Use any interrupt assigned to the port"
_Pasha
Цитата(_lukash_ @ Jan 22 2009, 18:45) *
Может кто решал эту проблему - подскажите как отключить вмешательство LPT драйвера в WinXP при передаче данных через Control регистр.


В аттаче полезного - один файл *.reg для слива в реестр. Остальное - для сверки smile.gif
_lukash_
Спасибо, завтра все опробую.
Отпишу результат.
amadey2
Удалось ли решить данную проблему?
Паша и Лукаш - не вижу приаттаченного файла. Киньте пожалуйста ссылку или сам .reg файл мне на емейл amadey2@rambler.ru
или объясните как успокоить порт при замыкании контактов статуса на разъеме LPT.
smalcom
попробуйте DLPortIO
amadey2
Цитата(smalcom @ Nov 13 2015, 16:40) *
попробуйте DLPortIO


Большое спасибо! Поиском нашел сайт с описанием этого драйвера, и там было описание как решить проблему поллинга.
Вот подробнее:

Так как Windows опрашивает LPT-порт, пытаясь определить тип принтера, подключенного к порту, это может сбивать работу как входных, так и выходных линий LPT-порта. Для предотвращения сбоев, нужно отключить поллинг LPT-портов. Создайте файл disable-lpt-poll.reg и поместите в него следующий текст:

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Parport\Parameters]
"DisableWarmPoll"=dword:00000001

Запустите этот файл на исполнение, и в реестре Windows создастся ключ, отключающий поллинг для стандартных LPT-портов. Однако, если Вы используете платы расширения, которые в Windows добавили свои драйвера, для отключения поллинга потребуется поискать в реестре раздел, соответствующий Вашей плате расширения и добавить в этот раздел тот же ключ. Например, если используется плата расширения NetMos, то добавьте в файл disable-lpt-poll.reg дополнительный текст:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NmPar\Parameters]
"DisableWarmPoll"=dword:00000001

Первый ключ отключит поллинг стандартных портов, а второй — отключит поллинг портов на платах расширения.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.