Использование параллельного порта в Windows

Я планирую подключить Noritake VFD GU256x64D-3900 через параллельный порт с ПК с Windows 10.

Для этого я начал исследовать способы использования параллельных портов в Windows. Я нашел несколько документов об дескрипторах коммуникационных ресурсов и клиентских интерфейсах для параллельных драйверов, поставляемых системой.

Похоже, что многие люди, играющие с параллельными портами в Windows, используют специальный драйвер с именем inpout32 для доступа к регистрам параллельных портов. В идеале я хотел бы избежать использования его в конечном решении и придерживаться драйвера Microsoft, если это вообще возможно. Хотя оказывается полезным протестировать мой параллельный порт, в частности, через LPT Test Utility, используя предложенную схему.

Теперь, используя приведенный там пример кода, эта функция WriteFile зависает независимо от того, что я установил на свои контакты Ack и Busy, используя схему LPT Test Utility. Он зависает, даже если я пытаюсь записать один байт данных. Однако при вызове WriteFile включаются светодиоды Strobe и Linefeed.

Благодаря LPT Test Utility я получаю следующие результаты:

  • Я могу контролировать все светодиоды данных
  • Я могу прочитать все состояния, контролируемые с помощью DIP-переключателя (Ошибка, Выбрать, Нет бумаги, Занят, Подтвердить)
  • Индикаторы инициализации и выбора принтера работают нормально
  • Светодиоды Strobe и Linefeed можно включать и выключать только вместе. Если убрать галочку с любого из них, оба светодиода погаснут.

Я считаю, что параллельный порт, который я тестирую, находится в режиме ECP.

Так как этот VFD Noritake подключается только к D0-D7, /WR (строб), Busy и заземлению, я обеспокоен, что я могу получить такое же поведение зависания после подключения дисплея.

Я еще не начал проверять различные функции драйвера Microsoft, который, по-видимому, доступен через DeviceIoControl, чтобы посмотреть, как и если я смогу повлиять на работу моего порта.

Есть ли кто-нибудь со знаниями и, возможно, работающими примерами кода для такого специфического использования параллельного порта в Windows?

0 ответов

Другие вопросы по тегам