Текущий архив: 2005.07.11;
Скачать: CL | DM;
Внизработа с LPT портом Найти похожие ветки
← →
Serge KV (2005-05-11 01:39) [0]Мне нужно подсвечивать 10 лампочек, подключенных к LPT порту. Насколько я понимаю, 8 из них можно без проблем подсвечивать через контакты шины данных с помощью функции WriteFile. Вопрос - что делать с остальными двумя, к каким контактам их лучше подключить и как проще всего управлять напряжением на этих контактах?
Если можно с примером...
Спасибо
← →
KilkennyCat © (2005-05-11 02:35) [1]можно еще использовать следующие:
STROBE
AUTO FD
INIT
SLCT IN
причем, только INIT прямой.
> и как проще всего управлять напряжением на этих контактах?
Это очень неверно! Забудьте слово "напряжение" применительно к портам ввода-вывода (за исключением питания, как в USB). Есть логическая 1 и логический 0. Управлять лучше всего через регистры, например, КР1533ИР53. Без проблем сможете использовать 32 лампочки.
← →
KilkennyCat © (2005-05-11 02:37) [2]КР1533ИР35 - очепятколся.
← →
Serge KV (2005-05-11 11:23) [3]STROBE
AUTO FD
INIT
SLCT IN
Тогда как установить на этих контактах логическую единцу? (с помощью WinAPI)
КР1533ИР35 а что это такое?... мне желательно без дополнительных микросхем на порте..
← →
Serge KV (2005-05-11 11:24) [4]и что значит "INIT только прямой"?
← →
Tesla (2005-05-11 12:38) [5]
> Serge KV (11.05.05 01:39)
Ты лампочки собираешься напрямую на порт навесить? У LPT порта нагрузочная способность 20 мА для старых мамок и порядка 5 мА для новых - у тебя имно или лампочки гореть не будут или порт спалишь. KilkennyCat дело говорит.
← →
Tesla (2005-05-11 12:42) [6]
> Serge KV (11.05.05 11:24) [4]
> и что значит "INIT только прямой"?
т.е. программно на INIT ставишь 1 - получаешь на ножке порта INIT логическую еденицу, ставишь 0 - логический нуль. Для инверсных всё наоборот.
← →
shein (2005-05-11 17:02) [7]Tesla дело говорит. порт нагружать нельзя. В крайнем случае можно использовать маломощные светодиоды, есть такие, что уже при 3мА нормально видны. Ес-но не забыть последовательно включить резисторы.
Доступ к управлению линиями LPT порта через порты ввода вывода $378-$37A или $278-$27A (это для LPT1 и LPT2 по умолчанию. В BIOS они могут быть изменены)
http://www.csu.ru/faculties/phys/maelab/_frames/_lpt_1.htm
Запись байта данных в порт приводит к появлению соответствующей комбинации сигналов на выводах.
Для работы с портами ввода/вывода в Turbo Pascal использовался массив portb[адрес] и portw[адрес] Для Delphi это тоже работает в Вин98, хотя не всегда. Надо искать соответствующие компоненты. Например DLPortIO когда-то лежал на этом сайте
← →
Serge KV (2005-05-12 20:24) [8]Всем спасибо... но остался один вопрос -
как с помощью WinAPI устанавливать 0 или 1 на контакты:
STROBE
AUTO FD
INIT
SLCT IN
?
← →
debuger © (2005-05-12 21:02) [9]:)
← →
Serge KV (2005-05-13 01:29) [10]?
← →
KilkennyCat © (2005-05-13 17:50) [11]
> [8] Serge KV (12.05.05 20:24)
А как Вы устанавливаете сигналы на шине данных? точно также и на управляющих, только адрес со смещением. Если ADDR - регистр данных, то ADDR+1 - регистр состояния, ADDR + 2 - регистр управления, который Вам и нужен.
По битам они (управляющие) в перечисленном порядке.сигнал бит
___________________
STROBE 0
AUTO FD 1
INIT 2
SLCT IN 3
Страницы: 1 вся ветка
Текущий архив: 2005.07.11;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.037 c