[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Недавно кстати уже обсуждалась эта тема. Теоретически ввод по D0...D7 поддерживают 2 режима EPP и ECP. Но реально на практике мне удалось добиться ввода только в режиме EPP. Возможно из за того что ECP порт имеет дополнительные регистры контроля ( Base+401 и Base+402 ), к которым я не обращался ( см. описание http://www.beyondlogic.org/ecp/ecp.htm#9 ), а у EPP порта можно использовать регистры те же что и у SPP ( EPP можно использовать еще base+3 и base+4 ). Также есть неопределенность с тем, что надо записывать в управляющий регистр для переключения на ввод. У меня опытным путем получилась константа 0xE0
и после команды типа outportb(base_add+2,0xE0); - все получается. Но на всякий случай рекомендую все же поставить в разрыв линий шины D0..D7 резисторы где нибудь по 200 ом. Чтобы не соединились 2 выхода ( ваш девайс и LPT ), если порт останется в режиме вывода.
E-mail: info@telesys.ru