max_28 Опубликовано 16 июля, 2007 Жалоба Поделиться Опубликовано 16 июля, 2007 Принтер подключается к lpt порту, и используется только одна модель Epson LX 300+. Т.е универсальное решение не обязательно. Пишу в принтер ф-цией write() состояние принтера (включен/выключен, есть ли бумага) определяю путем прямого чтения из порта. а можно (и как) определить когда принтер закончил печать? т.е можно ли узнать когда опустеет буффер принтера? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AccessD Опубликовано 16 июля, 2007 Жалоба Поделиться Опубликовано 16 июля, 2007 может, есть регистр, отвечающий за это? что-то должно быть, отвечающее за состояние готовности. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
max_28 Опубликовано 16 июля, 2007 Автор Жалоба Поделиться Опубликовано 16 июля, 2007 ioperm(0x378,2,1); usleep(100000); st=inb(0x378+1); ioperm(0x378,2,0); st покажет состояние принтера (включен/выключен/ошибка), есть ли в принтере бумага. А вот состояние печати (есть ли в буффере принтера данные для печати) от туда не узнать. Значение st не изменяется при наличии/отсутствии в буффере принтера данных. А от куда узнать есть ли чтото в принтере я так и не нашел . Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AccessD Опубликовано 16 июля, 2007 Жалоба Поделиться Опубликовано 16 июля, 2007 http://phys.csu.ru/maelab/_frames/_lpt_1.htm здесь посмотрите, может что найдёте. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AccessD Опубликовано 16 июля, 2007 Жалоба Поделиться Опубликовано 16 июля, 2007 вот ещё http://www.sibsutis.ru/~mavr/PC/LPT/1.HTM Цитата: Режимы и регистры ЕСР - порта..... ...... Режим 110 (Test Mode) предназначен для тестирования взаимодействия FIFO и прерываний. Данные могут передаваться в/из регистра TFIFO с помощью DMA или программным способом. На внешний интерфейс обмен не воздействует. Адаптер отрабатывает операции вхолостую на максимальной скорости интерфейса (как будто сигналы квитирования приходят без задержек). Адаптер следит за состоянием буфера и по мере необходимости вырабатывает сигналы запроса прерывания. Таким образом программа может определить максимальную пропускную способность канала. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.