Перейти к содержанию
    

LPT порт и Windows XP

Смущает меня следующее свойство Windows XP:

 

Если замкнуть на землю любую из линий 10, 11, 12, 13, 15 LPT порта, то происходит

активизация какого-то системного драйвера и он начинает дёргать линии DATA и CONTROL.

 

Как получается, что этот системный драйвер не мешает обмену данными с внешним

устройством, ведь какие-нибудь из линий 10, 11, 12, 13, 15 обязательно используются

при реализации протокола обмена.

 

Все пишут программы, работающие через LPT (например, самодельные программаторы) и

ни у кого нет сбоев. В чём тут секрет ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пора заносить в FAQ.

http://www.pemicro.com/faqs/faq_view.cfm?id=4

(2) In Windows XP, make sure to turn off the parallel port plug and play scanning "feature". This feature of windows XP will interrupt parallel port communications between the PC and P&E's interface cable. This will yield what looks like sporatic communications. Turning of the autoscan "feature" may be turned off for the parallel port done by downloading and running the WINXP registry patch attached to this FAQ.

WINXP2.ZIP

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Большое спасибо за ссылку - это мне поможет. Но я собственно хотел узнать, как программным

путём решается эта проблема.

 

Ведь многие программы, которые через LPT порт и загрузочные кабели прошивают микрухи, как-то

блокируют все другие обращения к порту пока идёт процесс программирования. И никаких Patch

не надо. Хотелось бы в общих чертах понять как именно они это делают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Большое спасибо за ссылку - это мне поможет. Но я собственно хотел узнать, как программным

путём решается эта проблема.

 

Ведь многие программы, которые через LPT порт и загрузочные кабели прошивают микрухи, как-то

блокируют все другие обращения к порту пока идёт процесс программирования. И никаких Patch

не надо. Хотелось бы в общих чертах понять как именно они это делают.

 

 

 

Если под 'другими программами' понимаются программы под Windows, то они это делают через соотвествующий системный драйвер. Этот драйвер, прежде чем лезть в регистры порта, должен открыть системный драйвер соотвествующего LPT порта (куда он собирается лезть) и запросить у него экслюзивный доступ к порту. При этом Windows блокирует доступ к порту со стороны всех остальных программ (включая ее саму)

 

 

 

Пример куска драйвера в присоедененном файле

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...