Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler

Выпуск № 423
от 12.04.2006, 10:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 299, Экспертов: 23
В номере:Вопросов: 1, Ответов: 2


Вопрос № 39554: Как подать единицу логическую с 2 и по 5 выхода LPT порта mov dx,378h mov al,?(что сюда вставить чтобы была 1 на 2 выводе LPT потра) out dx,al...

Вопрос № 39.554
Как подать единицу логическую с 2 и по 5 выхода LPT порта
mov dx,378h
mov al,?(что сюда вставить чтобы была 1 на 2 выводе LPT потра)
out dx,al
Отправлен: 06.04.2006, 16:20
Вопрос задал: Котелевец А.В. (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: EPDSota
Здравствуйте, Котелевец А.В.!

Если хочешь на 2-й штырек в разъеме lpt порта - то это будет:
mov dx,378h
mov al,1
out dx,al

А если на вывод data2 (4-й штырек в разъеме lpt порта), то это будет:
...
mov al,100b
out dx,al

---------
Открыть глаза навстречу солнцу
Ответ отправил: EPDSota (статус: Специалист)
Ответ отправлен: 06.04.2006, 16:59

Отвечает: Пан Павел Константинович
Здравствуйте, Котелевец А.В.!
Я смутно понел ваш вопрос НО! помогу чем смогу.

Работа с параллельным портом (LPT).

Обычно этот порт имеет базовый адрес 378h (LPT1), 278h (LPT2), 3BCh (LPT3). Окончание "h" свидетельствует о шестнадцатиричной системе счисления, так уж принято записывать адреса. Порт занимает три адреса, первый из них называется базовым. Так, для LPT1 диапазон занимаемых им адресов: 378h-37Ah. Базовый адрес служит для посылки/чтения байта на/из линии d0-d7 (пины 2-9 разъёма DB-25). Посылка не инвертируется. Приведу фрагмент программы, посылающей в порт число 170.

{начало программы}
...
begin
Port[$378]:=170
end.
{конец программы}

При запуске её на линиях d0-d7 появится число 170 в двоичном виде, что соответсвует 10101010. Т.е. единичный сигнал будет присутствовать на выводах d1, d3, d5, d7 (обозначени выводов начинается с d0!). Число 170 останется на выводах разъёма до тех пор, пока Вы не перешлёте туда же другое число (это может сделать и другая программа) или не выключите компьютер.

Хммм... Давайте преступим, если я понел првильно вас, то ответ будет таков:
> что сюда вставить чтобы была 1 на 2 выводе LPT потра?
>> под вырежением "2 выводе LPT порта", я понел что вы имеете ввиду линию d2 например, разъёма DB-25, относительно этого вот код:

mov dx,378h
mov al,4h
out dx,al
4h = bin(0000 0100), единичный сигнал будет на d2 отсчёт вести с d0.

Или вы имеете ввиду не линию d2, а пин 2 например, разъёма DB-25 то вот код:

mov dx,378h
mov al,1h
out dx,al
1h = bin(0000 0001), единичный сигнал будет на d0 т.е. на пин'e 2-ом. Почему так? Помните выше было написано вот это -> d0-d7 (пины 2-9 разъёма DB-25).

С, Уважением MnEm0n!C.


---------
Hello Worlds
Ответ отправил: Пан Павел Константинович (статус: 5-ый класс)
Ответ отправлен: 07.04.2006, 00:03


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.30 (beta) от 09.04.2006
Яндекс Rambler's Top100

В избранное