Вы сейчас на:  Главная страница - Как определить адрес LPT - Порта
Программирование
 Определение адреса LPT - Порта
 Управление LPT портом из Delphi 7
 Регистр данных LPT порта Delphi 7
 Интернет с 3g модема на роутер

Прошивки
 Прошивка Wi-Fi точки DWL 2100
 Программа для модема ZTE MF100
 Прошивка модема ZTE MF 626
 Программа для прошивки китайских телефонов
 Драйверы на Acer Aspire

ОC и утилиты
 Установка Windows XP c флешки
 Загрузка с флешки XP Live USB
 Загрузка Windows PE Mini CD
 Создание флешки с MS DOS

Онлайн самоучители
 Самоучитель по Visual Basic 6 0
 Самоучитель по php
 Самоучитель по JavaScript
 Kylix 3 - Delphi 7 для Linux

Игры
 Сервер World of WarCraft 2.4.3
 Cкачать World of WarCraft 2.4.3
 Анлокер для Warhammer 40K
 Counter Strike 1.6 install

Программы для Windows
 Антивирусы
 Архиваторы
 Графика
 Для Мобильного
 Интернет и сеть
 Мультимедиа
 Переводчики
 Система

Радиотехника
 Усилитель на микросхеме PAL007
 Цветовая маркировка резисторов
 Устройство для управление электроприборами с ПК
 Программа для черчения электрических схем
 Программа для создания печатных плат

Графика
 Визитки для парикмахеров
   Визитки для парикмахеров [2]
   Визитки для парикмахеров [3]
   Визитки для парикмахеров [4]
 Визитки для маникюра
   Визитки для маникюра [2]
   Визитки для маникюра [3]

Решение проблем с адресом PCMCIA to LPT адаптера

Добро пожаловать!

Как узнать адрес LPT

        LPT (параллельный порт) предназначен для связи компьютера с внешними (перефирийными) устройствами и имеет базовый адрес &H378 (LPT1), &H278 (LPT2), &H3BC (LPT3), что в десятичной системе соответствует адресам: 888 (LPT1), 632 (LPT2) и 956 (LPT3).

        Эти три адреса являются базовыми и при загрузке операционной системы происходит опрос именно этих трех адресов. По этим адресам посылается байт после чего происходит считывание этого байта. Если считанный байт равен записанному, то по данному адресу обнаруживается активный LPT-порт. На этом принципе и основан алгоритм программы LPT Port Scaner, о которой пойдет речь ниже.

        Современные компьютеры всё реже стали оснащать LPT - портами, что уж говорить о ноутбуках, на которых они и вовсе исчезли, почем не заслуженно. Существует множество программаторов, работающих через LPT - порт. Что же делать пользователям этих устройств? Рынок наводнили разного рода адаптерами, работающими через интерфейс USB, PCMCIA (произносится пи-си-эм-си-ай-эй), ExpressCard (ранее NEWCARD) и др. и теперь нам есть из чего выбрать. Но даже сделав правильный выбор мы не всегда можем прийти к желаемому результату, как это было со мной. Купив PCMCIA to LPT карту я надеялся оснастить свой ноутбук полноценным LPT - портом, но тут меня ожидало разочарование: мои программы никак не могли найти порт, как и программы сторонних производителей. Оказалось, что адрес, выделяемый устройством не всегда находится в стандартном диапазоне. Это и стало причиной, сподвигшей меня к написанию программы LPT Port Scaner.


Рисунок 1. USB to LPT

PCMCIA (произносится пи-си-эм-си-ай-эй)

Рисунок 2. PCMCIA to LPT
Expresscard
Рисунок 3. Expresscard to LPT


Рисунок 4. PCI to LPT


        Если Вы не можете обойтись без LPT - порта в силу сложившихся обстоятельств или еще чего-нибудь, то Вы можете преобрести одно из вышеуказанных устройств. Однако, при использовании таких адаптеров зачастую возникают проблемы с адресами портов, т. к., они бывают расположены не в стандартном для LPT - порта адресном пространстве, а в пространстве, присвоенном устройству во время обнаружения, что особенно касается Plug and Play устройств.

        Существует множество программ для программаторов, работающих через LPT и поддерживающих ручную настройку адресации. Такие программы не найдя LPT - потра по стандартному адресу обычно вместо адреса выводят надпись "Hex". Зная адрес порта можно ввести его вручную, если того позволяет ПО, с которым Вы работаете.

        Попробуем разобраться в этом на примере адаптера PCMCIA to LPT. После установки устройства и драйвера к ниму в диспетчере устройств появится устройство с именем LPT Port1 или что-то в роде того (На Рис. 5 PCI Parallel Port (LPT3)). Кликаем на Устройстве, после чего переходим на вкладку "Ресурсы" (Рис.6.), где отчетливо видим все доступные ресурсы этого устройства и диапазоны ввода/вывода. Адрес LPT - Порта будет находится в диапазоне ввода/вывода ресурса устройства, который отображается в шестьнадцатиричной системе счисления (0 1 2 3 4 5 6 7 8 9 A B C D E F) в столбце "Параметры".

        Теперь, для того, чтобы найти адрес LPT - Порта, Вам понадобится программа LPT Port Scaner.

Диспетчер устройств

Рисунок 5. Диспетчер устройств.

Ресурсы

Рисунок 6. Свойства LPT - Порта.

LPT Port Scaner

Рисунок 7. Интерфейс программы LPT Port Scaner



Рисунок 8. Распиновка LPT - Порта.

        Сразу должен предупредить, что программа LPT Port Scaner использует библиотеку inpout32.dll, которая находится в архиве с программой и всегда должна находиться в папке с ней, иначе возникнет ошибка. Так же, в архиве находится картинка с распиновкой LPT - порта.

        И так, как было сказано выше, адрес порта находится в диапазоне ввода/вывода ресурса устройства в столбце "Параметры". По-этому, после того, как вы скачали программу и запустили её (рисунок 7) имеет смысл узнать в каком диапазоне находится адрес порта на Вашем компьютере (как это сделать сказано выше.). Определив минимальное значение ресурса, вводим его в поле рядом с надписью "С адреса:" (на рисунке 6 минимальное значение = FDE0). Следом определяем максимальное значение (на рисунке 6 оно равно FDEF), вводим его в поле рядом с надписью "по адрес:" и нажимаем кнопку "Задать", после чего в полях справа должен определиться диапазон в десятичной (Dec) системе счисления. Ну а теперь можно нажать кнопочку "Scan" и в текстовом окне справа выведется результат опроса портов в заданном диапазоне.
В столбце "Dec" выводится адрес в десятичной системе счисления
В столбце "Hex" - в шестьнадцатиричной.
В столбце "Запись" выводится число, посылаемое в порт и оно зависит от параметров, выставленных в разделе "Вывод данных" (по умолчанию флажки установлены так, чтоб число, посылаемое в порт было равно 0).
В столбце "Чтение" выводится считанное из порта число. Если оно равно записанному, то, возможно, по данному адресу находится искомый LPT.

        А самым простым способом, по моему мнению, является поиск в столбце "Чтение" числа 120 (Рисунок 7). Это регистр состояния (status) и если не одна из цепей не заземлена (разьем отключен), то считываемое число будет именно 120. Строкой выше будет находиться регистр данных (Data) с цепями D0-D7, а строкой ниже - регистр управления (Control) с цепями C0-C3 (рисунок 8).
Таким образом мы получили адреса FDE8, FDE9 и FDEA, которые в нашем случае соответствуют стандартному LPT - Порту с адресами 378, 379 и 37A.

        Чтобы убедиться в том, что мы нашли именно нужный нам порт, можно вставить светодиод прямо в разъем порта анодом в любую цепь с D0 по D7 (c 2-го по 9-й пин см. рисунок 8), катодом в любую цепь с 18-го по 25-й пин (это общая земля), после чего необходимо выставить верхний диапазон равный нижнему (например: с адреса FDE8, по адрес FDE8), и поставить соответствующую галку в разделе "Вывод данных". После чего при каждом нажатии кнопки "Scan" цепи регистров будут включаться в соответствии с конфигурацией галок в разделе "Вывод данных".
Если вы захотите подключить светодиод к регистру управления Control (1-й, 14-й, 16-й и 17-й пин(C0-C3)), то учтите, что три из четырех цепей инвертированы. В программе учтена эта особенность, и по умолчанию на всех цепях регистров будет логический ноль.

Скачать с Deposit Files Скачать программу для сканирования LPT - Портов LPT Port Scaner v1.0.0



Другие сайты
 Серебряный пес
 Delphi World
 RepitoriX
 Изготовление наружной рекламы в г. Буденновске

Изготовление наружной рекламы в г. Буденновске

Обмен Webmoney




Получить WMR-бонус Balans.kz на свой кошелек!


Copyright LexCorp © 2010-2013