Дмытрохан |
Дата: Воскресенье, 11.12.2011, 02:10 | Сообщение # 1 |
Создатель сайта
Группа: Администраторы
Сообщений: 178
Награды: 7
Репутация: 103
Статус: Офлайн
|
Привет!!! Quote Вопрос: -Как прочесть состояние входов LTP порта? Ответ: -Просто! Качаем Паскаль 7 -
Давайте сначала немного теории... ЛПТ порт,как я уже говорил,имеет 3 регистра. 1)"0" - это передача в стандартном SPP(Standart Paralel Port).Его адрес $378+0 или просто $378. 2)"2" - это передача данных.Адрес - $378+2 т.е $37А если не ошибаюсь. 3)"1" - это прием в любых обстоятельствах и адрес ему равен $378+1 или $379 о нем и пойдет сегодня речь . Судя из моей практики,стояло б заметить, что лпт порт может читать 2 состояния на входе(Высокое/Низкое). Сначала работа с Низким. Простейшая принципиальная схемка. Все резисторы 1 КОм. Порт не будет работать без этой проги.Поэтому читаем внимательно эту тему! Инструкция внутри. Для чтения данных следует набрать этот код на Паскале: Quote uses dos,crt; {Модули} const adres=$379; {Присвоить адрес порта константе "адрес"} var b:byte; begin b:=8;{Мы читаем негативное и чтобы увидеть разницу присвоим переменной b значения 8 } writeln(b);{Выводим для визуального воспринимания.} readln;{Жмем Энтер} b:=port[adres] and 8; {А теперь затаскаем в b значение 15 лапки(картинка в спойлере) лпт порта.Т.к } writeln(b);{было.} readln;{было} end. А теперь немного ЕХЕ и исходников на Паскале по ссылке ниже) Все с Низким уровнем на входах разобрались . Теперь Высокий. На Высоком все то же,только наш лпт почему-то завис у высоком состоянии(на моем компе наблюдается такое). "И что дальше?"-спросите Вы. А дальше мы просто принудительно снимим наш лпт с Высоты , припаяя резисторы номиналом 3-5 КОм к входу и корпусу. Пишем следующий код: Quote uses dos,crt; {Модули} const adres=$379; {было} var b:byte; begin b:=0;{Изменения тут} writeln(b);{было.} readln;{было} b:=port[adres] and 8; {А теперь заносим в b значение 15 лапки(картинка в спойлере) лпт порта.Т.к } writeln(b);{было.} readln;{было} end. И исходников с ЕХЕ-шками подгоню по ссыле ниже)
Вопросов не смущаться!!
Нет человека-которого нельзя научить... Есть человек-который не хочет учиться!!!
|
|
| |