Приём компьютером сигнала через LPT - аппаратная часть.

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Открыл глаза
Сообщения: 55
Зарегистрирован: Вс июл 18, 2010 00:06:43

Сообщение KSergey »

Имеется большое количество материала по управлению разнообразными устройствами по LPT. Хочется осуществить аналогичное по простоте схеме, изображённой на приложенном рисунке, только с обратным эффектом - при нажатии на кнопку, например, на определённую ножку LPT-порта поступить логическая "1".
Какой должен использоваться принцип и какова может быть его простейшая техническая реализация в "железе"?
Вложения
lpts2000.gif
(2.32 КБ) 686 скачиваний
Реклама
VT1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2458
Зарегистрирован: Вс июл 11, 2010 14:39:04
Откуда: Россия.

Сообщение VT1 »

Аппаратная реализация это кнопка на выводе LPT порта.
Нажимайте, а дальше програмно в компьютере это обрабатывайте.
Само собой опять же програмно скофигурируйте ваш порт в соответствии с вашими задачами.Он же после загрузки скофигурирован у вас как порт печати. Пойдет такая конфигурация, то пользуйтесь просто ей.
Контактная информация:
Реклама
Опытный кот
Аватара пользователя
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

Схемотехнично LPT шина данных подтянута к +5V через 1,2 кОм (должна быть подтянута по спецификации стандарта).
1.gif
(7.3 КБ) 885 скачиваний
Подключать можно на любой порт D0...D7. При чтении "1" не нажата и "0" кнопка нажата.
Открыл глаза
Сообщения: 55
Зарегистрирован: Вс июл 18, 2010 00:06:43

Сообщение KSergey »

То есть фактически изменение состояния осуществляется за счёт замыкания/размыкания данного вывода с землёй? Наподобие http://azbukavb.narod.ru/teorie/LPT.html - 3-я схема. Это ясно, а в чём суть схем, что идут там дальше - с резистором? И на http://cxem.net/comp/comp88.php - просто подача +5 вольт от другого источника что-ли?
Реклама
Эиком - электронные компоненты и радиодетали
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 20
Зарегистрирован: Вт апр 06, 2010 19:48:00

Сообщение Евгений В »

Реклама
Открыл глаза
Сообщения: 46
Зарегистрирован: Чт апр 28, 2011 13:23:58

Сообщение v_mil »

Можно для ввода использовать линии статуса по той же схеме, предложенной asteroid7 http://radiokot.ru/forum/download/file.php?id=41841. Или просто замыкать их кнопкой на землю, желательно через защитный резистор.
Для проверки читаем значение из аппаратного порта <Базовый адрес>+1 (только чтение). У порта есть один инвертированный статусный вход, который возвращает нуль, когда кнопка отпущена и на входе логическая 1 (точно как Вы просили). Это - /Busy (ножка 11 на разъеме DB25F на компьютере) Соответствует биту 7. Есть еще 4 неинвертированных входа, возвращающих биты 3-6, соответственно, Fault(ножка 15), Select(13), PaperEnd(12), Ack(10). Возвращают 1 когда на линии единица (кнопка отпущена). Биты 0-2 не используются (по идее 0, но могут быть и 1). Почему-то в одной статье нашел, что линия 10 тоже инвертирована, но у меня на машине это не так. Проверьте...
Преимущество :)) использования статусных линий для ввода: все восемь линий данных к Вашим услугам и их можно использовать для управления устройствами.
Недостаток :cry: - драйвер ОС может перехватить изменение состояния статусных линий и начать переключать значения линий управления (1, 14, 16, 17), а также, линии данных. В таком случае, если нет LPT-принтеров, стоит отключить драйвер (в Windows, например, через диспетчер устройств) и проверить реакцию.
Какие часы лучше, идущие или стоящие? Конечно стоящие!
Стоящие часы показывают абсолютно точное время аж 2 раза в сутки, а идущие - никогда.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Сообщение coredumped »

asteroid7 писал(а):Подключать можно на любой порт D0...D7. При чтении "1" не нажата и "0" кнопка нажата.
Только это будет работать в Bi-directional портах, которые есть не на всех мамках, в остальных D0..D7-только выходы. Ввод гарантировано, на всех мамах, можно получить только по линиям статуса. Их всего 5 - ack, busy, paper out, error, select.
Все будет только лучше, в крайнем случае - хуже.
Опытный кот
Аватара пользователя
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

coredumped писал(а):Только это будет работать в Bi-directional портах...
Согласен.
Чтобы считывать через D0-D7 в биосе указать LPT порту, что он не SPP, а EPP.

ИМХО однонаправленные LPT порты умерли при частотах процессора 166-200 MHz.
Ответить

Вернуться в «Интеграция с ПК»