Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > Помогите с LPT портом


Автор: DenisP 4.6.2003, 09:44
Здравствуйте!
Помогите решить проблему с LPT портом!
Необходимо на одном из 8-ми битов данных LPT порта выставить 1,а на других 0. Т.е. выставить 12В на одной из ножек данных LPT порта программно. И удерживать этот потенциал неопределенный промежуток времени. Хотел попробовать через API, но не хватает мозгов это сделать. Может быть кто сталкивался с такой задачей? Помогите!
Спасибо!

Автор: Crait 4.6.2003, 19:07
12 V на выходе LPT не выставить точно ;)

Автор: sergeeff 14.6.2003, 10:32
Где тебе это надо делать. В Win98 или в 2000(XP)?

Автор: esergey 21.6.2003, 04:46
Можно на асме
out адрес порта, число

Автор: RRD 17.7.2003, 10:06
У LPT порта питания вообще нет. Т.е. если ты подключаеш к LPT устройство то оно должно иметь свой источник питания. Получить 12В можно с COM порта(но при очень маленьком токе и не стабилизированное )
Если ты хочеш работать с LPT в WIN2000 или WINXP то надо писать драйвер устройства. Если в win9x то можно на прямую.

Автор: Unregistered 10.10.2003, 09:06
Господа, а может, кто подскажет, как прочитать ноги 11 (Busy),12(Paper-End),13(Select),15(nError) разъема LPT1. Какой адрес порта? 378h? 37Bh? И каким битам это соответствует?

Автор: gribikc 11.10.2003, 08:46
379h+1=889d это адрес
Busy(11)=128
Ack(10)=64
Pe(12)=32
Slct(13)=16
Error(15)=8
Усё!!!!

Автор: Jiny 13.10.2003, 13:49
Цитата(Unregistered @ 10.10.2003, 09:06)
Господа, а может, кто подскажет, как прочитать ноги 11 (Busy),12(Paper-End),13(Select),15(nError) разъема LPT1. Какой адрес порта? 378h? 37Bh? И каким битам это соответствует?

Насчет того как считать BUSY (S7, Pin11) :
Попробуй использовать библиотеку IO.DLL,
там есть все функции работы с портами компа
378h - базовый адрес, регистр данных (D0-D7) (Pins 2-9)
379h - регистр статуса
37A - регистр управления
Если что пиши на мыло, сам недавно столкнулся с такой проблемой.
нужно читать по "базовому адресу+1" (379h)
Про биты :

адрес 379h
биты :
7 - BUSY (inverse bit)
5 - PAPEREND
3 - error

адрес 37A
3 - выбрать принтер(инверсный)


Автор: FANASM 18.10.2003, 22:14
советую статью
на сайте http://asm.shadrinsk.net
"работа с ком и лпт портами"
те на основе API CreateFile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)