Юсб переходник для принтера

Юсб переходник для принтера

В этой статье мы подробней расскажем, что такое переходник lpt на usb для принтера. Можно будет узнать, где и зачем используется, с какой целью и в каких сферах применяется, принцип работы и сложности, которые могут возникать в процессе. А также можно ознакомиться с видео, которое поможет правильно подключить такой девайс самому.

Особенности конструкции

Чтобы подключить старые принтеры, понадобится купить LPT USB переходник. Найти его в интернет-магазинах достаточно сложно, так как его потребность с каждым годом сводится к минимуму. Только в некоторых узкопрофильных и дорогих аппаратах наподобие DELL или HP есть порт LPT.

Для подобного адаптера характерна поддержка различных принтеров, сканеров, МФУ и другой подобной техники. Для надежного закрепления устройство может быть укомплектовано болтами. Длина кабеля не превышает один метр, чтобы передача данных не была искажена или прервана на физическом уровне внутри изделия. На одной плате одновременно содержится 26 коннекторов. На обратной стороне устройства содержится резистор в комплекте с чипом и предохранителем. Выход контактов осуществляется за счёт контроллера.

После подключения переходника Windows определит новый порт. Подключать нужно не напрямую в ПК или ноутбук, а все же использовать родной кабель принтера.

Оптимальным вариантом будет самостоятельная установка принтера без автоматического поиска драйверов. Потому программное обеспечение нужно скачать на сайте производителя техники заранее. Файлы должны соответствовать версии и разрядности ОС. При удачном подключении следует провести пробную печать. Если она будет успешной, значит переходник подходит для девайса.

В Виндовс есть рекомендации по работе с LPT портом за счёт вызовов API функций OpenFile, WriteFile, ReadFile. Приложения используют порт для обмена данными, учитывая параллельный интерфейс, с внешними устройствами. Оно предназначено для отправки пакета данных. Операции по считыванию отправленной информации проводятся системным драйвером.

Программная составляющая

Этот раздел предназначен для опытных пользователей ИТ-техники.

Драйвер LPT1 осуществляет множество процессов одновременно. Он занимается настройкой параметров протокола передачи данных, реализовывает «логистику», делает невозможным выполнение других процессов. А также задействован в контроле управления отдельными битами порта на уровне операционной системы.

Usb переходник работает по принципу, которого необходимо придерживаться для полноценной работы:

  1. API вызов. Делаем запуск OpenFile, чтобы он работал с драйверами переходника, а не с драйверами порта. Он занимается приемом данных от стандартного приложения и далее их получает USB контроллер.
  2. Низкоуровневые задачи выполняются драйвером, а для приложения не имеет разницы при помощи какого драйвера и куда отправять данные.
Читайте также:  Canon eos 50d отзывы профессионалов

Возможные проблемы

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

Такие ситуации имеют решение — вмонтировать настоящий порт. Можно будет забыть о переходниках и интерфейсе USB. Если применять эти конструкции, то дополнительные сложности не возникнут. Компьютер определяет их как родной порт, что сводит проблемы к минимуму.

Такие процедуры не рекомендуется проводить на платах, где еще не кончилась гарантия или самостоятельно без наличия опыта.

Обзор цен

  • В отечественных магазинах стоимость переходника варьируется от 300 до 1 тыс. рублей. Все же основной диапазон — это 300–400. На него стоит ориентироваться при покупке.
  • Если есть время и желание ждать доставку несколько недель, то приобрести это устройство можно на АлиЭкспресс. Обойдется он всего 2 доллара. Но не забывайте о расходах на саму доставку, если варианта с бесплатной найти не удастся.

Видео

За время существования этого сайта мне довольно часто задают один и тот же вопрос, который можно описать примерно следующим образом:

"У меня в компьютере (ноутбуке) нет LPT порта. Купил себе переходник USB-LPT. Установил. Ваши примеры не работают. Почему?"

В итоге решил описать этот вопрос подробнее и написать статью. Да, действительно, сейчас стационарных PC с LPT портом нужно поискать (т.е. далеко не каждая "мать" сейчас идет в комплекте с LPT портом). Про ноутбуки вообще говорить не приходится. Современные модели LPT порт вообще не применяют. Только очень дорогие и специализированные машины, типа DELL, могут "похвастаться" наличием этого порта.

Также, сейчас в продаже можно свободно приобрести вот такие устройства, называемые LPT-USB переходниками.

Инстркуция гласит что этот прибор полностью совместим с различными принтерами, сканерами и т.д. Подключаем переходник к USB порту, устанавливаем драйвера. Смотрим диспетчер устройств. Скорее всего в ветке "Порты LPT/COM" ни чего не появилось (хотя бывают исключения). Скорее всего повится либо новая ветка со странным устройством с именем, например, LPT1USB либо в разделе USB устройств появится странная запись о "USB устройстве поддержки LPT принтеров". Пробуем запустить какой-нибудь пример из статей выше. И ни тут то было — ни чего не работает. Пробуем адрес порта LPT1 — ни чего не работает. Пробуем адресс порта LPT2. К сожалению, такая модернизация адреса в запросах тоже ни к чему не приводит — светодиоды как не загорались так и не загораются.

Читайте также:  Gom player как поменять звуковую дорожку

Чтобы разобраться в чем тут дело давайте вернемся на время к обычному "родному железному" LPT порту — LPT1, который из материнской платы "торчит". Зайдем в диспетчер устройств, заглянем в свойства нашего порта. Там мы увидим вот такую картину. Отлично видно, что система прописала базовый адрес ввода-вывода 0x378 и запрос на прерывание номер 7. Все правильно.

Теперь погрузимся на уровень программирования. В примерах статей выше мы минуя систему защиты ввода-вывода легальными и нелегальными способами напрямую общались с реально существующим регистром ввода-вывода, которому присвоен адрес 0x378. Тут все понятно. Незабудем также о том, что Windows рекомендует работать с LPT портом используя вызовы API функций — OpenFile(), WriteFile(), ReadFile(). Приложения, которые используют LPT порт для обмена информацией по парралельному интерфейсу с внешними устройствами (принтер, например) так и делает. У него нет задачи установить на каком-либо бите регистра Data лигическую еденицу. Ему (приложению) нужно просто отправить пакет данных, а кто там будет какие линиии при этом "дергать" и считывать его не сильно интересует. Эти операции проводит системный драйвер LPT порта. Он подгружается в память при загрузке ОС. Когда мы вызываем функцию OpenFile("LPT1", . ) мы по сути дела обращаемся к драйверу порта, который имеет символическое имя LPT1. Драйвер делает кучу всякой работы — запрещает доступ к порту другим процессам, настраивает параметры протокола передачи данных, собственно реализует эту передачу, но в конечном итоге все это сводится к прямому управлению отдельными битами LPT порта на уровне ядра ОС.

А теперь попробуем поработать с нашим переходником USB-LPT. Начнем как не покажется странным, с API вызовов. Запускаем OpenFile("LPT1USB", . ) (смотря как этот переходник диспетчере устройств назовется, если вообще назовется). Что при этом происходит? Дело в том, что теперь мы будем работать не с драйвером LPT порта ОС а с драйвером этого переходника! Вот в чем фокус то! Он принимает пакет данных от нашего пользовательского приложения и в нужном формате через систмный драйвер USB отсылает этот пакет на USB контроллер, "ноги" которого торчат из внешней LPT розетки на проводе (ну это так, "грубое объяснение"). Видете, здесь нет ни какого намека на обращение к регистрам по адресам 0x378(0x278), т.к. их просто нет!

Читайте также:  Драйвер для батареи ноутбука asus

Поэтому, когда Вы патаетесь запускать примеры данного раздела и обращаться напрямую по адресам 0x378 (если этот "псевдо порт" назвался LPT1USB или что-то в этом духе), 0x278 (LPT2_. ) и т.д. ни чего не происходит. Их просто нет! А вот программа котороая работает через API вызовы ни чего не заметит — вся низкоуровневая работа делается драйвером, а каким драйвером и куда пойдут пакеты данных (в реальный порт ввода-вывода или в USB хост-контроллер) — приложению неважно! Попробуйте открыть свойства "псевдопорта" в диспетчере устройств. Нет вкладки с ресурсами? Есть, но там каие-то неадекватные значения или вкладка деактивировнна? В том то и дело.

ИТОГО: С вероятностью 99% купленный Вами переходник USB-LPT не сможет обеспечить Вам работу на низком уровне с пинами этого порта.

Почему 99%? Потомоу что есть самодельниые USB-LPT переходники, которые определяются Windows как полноценный порт LPT1 и ему присваивается вполне обыденный адрес 0x378. Обращения на прямую к пинам порта проходят успешно! Однако это очень нестандартная конструкция (в первую очередь драйвер, который занимается перехватом обращений по базовому адресау порта LPT1). Все это не очень надежно (обновление ОС — и конструкция теряет работоспосбность) и для использования рекомендовано быть может только с натяжкой.

И что тагда делать?

Как ни покажется странным — решение ЕСТЬ. Вы всегда сможете добавить настоящий LPT порт в свой настольный компьютер или ноутбук. Во-первых, забудте сразу о переходниках с интерфейсом USB. Для решения этой задачи необходимо приробрести PCI-LPT переходник для настольного PC (необходимо наличие свободного PCI слота) или PCMCIA-LPT переходник для ноутбука (см. фото ниже).

В случае использования этих устройств ни каких проблем нет. Определяются они как настоящие "родные" LPT порты. Соответствующая запись будет добавлена в диспетчер устройств во вклдаку "LPT/COM порты". Прямое обращение к пинам порта будет работать.

Заказать обратный звонок

Ваша заявка принята. В течении 10 минут наш менеджер перезвонит вам для уточнения всех вопросов!

Введите ваш номер телефона и наш менеджер в течении 10 минут перезвонит вам для уточнения всех вопросов

Ссылка на основную публикацию
Adblock detector