IRPR/CENTRONICS конвертор
Виктор Чернов
Итак, как пишут в журналах, "не спешите выбрасывать свой старый"... в нашем случае Robotron :)Предлагаемое решение заключается в переделке адаптера ИРПР принтера Robotron для подключения к параллельному порту Centronics компьютера IBM PC. Никакой программной доработки firm- ware принтера не требуется.
Адаптер выполняет лишь преобразование _протокола_ обмена, а такой недостаток принтера Robotron, как 7-битная таблица символов, остается, естесственно, на "совести" принтера и лечится другими методами. Например, в Windows, при установленном флажке "Print text as Graphics" (печатать текст как графику) все работает пра- вильно, хотя и медленно. Под DOS-ом же русские буковки вряд ли бу- дут выводиться корректно. Для исправления этой "горбатости" копать нужно гораздо глубже (драйвер под DOS или изменение firmware) - дешевле imho приобрести новый принтер :)
Возможно, существуют другие разновидности принтеров Robo- tron, имеющие адаптеры, отличающиеся от того, который побывал у меня в руках. К сожалению, я не запомнил точное наименование прин- тера, адаптер от которого подвергался переделке :(
В любом случае, перед тем как потрошить адаптер, убедитесь в следующем:
- на адаптере должно быть написано "ИРПР";
- внутри адаптера имеется микросхема Z80PIO или ее аналог UB855;
- сам адаптер представляет собой пластмассовую коробку из двух половинок, соединяемых посредством защелок. К верх- ней половинке приклепана плоская железная пружина (соеди- ненная внутри проводником с общим проводом) для фиксации адаптера в месте установки.
- адаптер имеет два трехрядных разъема и выполнен в виде сменного блока, втыкаемого в принтер сзади.
Далее сопоставьте разводку выводов Z80PIO на схеме передел- ки и в имеющемся адаптере (если Вы найдете схему адаптера, задача значительно упростится) Все, что касается соединения Z80PIO с XB02 (разъем со стороны принтера), подключение резистора 27k между вы- водами A5 и A1(+5V) разъема XB02, а также подключение (или непод- ключение) выводов Z80PIO 18(ARDY), 27(B0), 21(BRDY), 15(ASTB) и 17 (BSTB) при переделке адаптера не изменяется. Убедитесь, что все эти цепи изначально присутствуют в адаптере.
Переделка заключается в следующем:
Из адаптера выпаиваются все элементы, кроме Z80PIO и резис- тора 27k между контактами A5 и A1(+5V) разъема XB02. Можно также оставить конденсаторы развязки по питанию. Далее на освободившееся пространство платы наклеиваются (вверх ногами) микросхемы (не за- будьте отметить первый вывод :) и выполняется проводный монтаж в соответствии с прилагаемой схемой переделки. Придется также изго- товить специальный кабель для подключения принтера. Для этого про- ще всего взять стандартный кабель Centronics (которым подключаются обычные принтеры) и вместо стандартного "принтерного" разъема под- паять ответную часть разъема, установленного на адаптере. Соответ- ствие контактов разъема DB25 (оставшегося на кабеле) и разъема адаптера XB01 приведено на схеме. Номера контактов "земли" (GND) на схеме отсутствуют, но "земля" на разъеме адаптера видна сразу- она занимает почти полный ряд контактов разъема.
Резисторы R1...R8 в моем варианте представляли собой резис- торную сборку "SIP 8 x 10k", припаянную непосредственно к выводам регистра U2.
Коротко о схеме. Наименования и функции сигналов на выводах порта B Z80PIO при переделке не изменяются:
/SC (B1) - 1 = входные данные порта A достоверны (вход); /S0 (B2) - 1 = принтер выбран внешним сигналом (вход); /S2 (B3) - ? похоже на вход инициализации, но (вход); вроде бы работал не так, как следует, а долго разбираться было влом... /A4 (B4) - 1 = конец бумаги в принтере (выход); /A0 (B5) - 1 = принтер выбран и готов к работе (выход); /AC (B6) - 1 = готов к приему очередного байта (выход); (импульс с уровнем лог.0 - подтверждение приема байта) /A2 (B7) - 1 = ошибка печати (выход).Байт, выставленный на шине данных D0...D7 по сигналу /STROBE защелкивается в регистр U2. Одновременно устанавливается триггер D5.1. Сигнал /SC становится равным лог.1 (данные достовер- ны), а сигнал BUSY = 1 (принтер занят). После того, как принтер считает байт с порта A Z80PIO, он устанавливает сигнал /AC в 0. По этому сигналу регистр U5.1 сбрасывается, BUSY вновь становится 0 и с помощью элементов C4, U3.5, U5.2, U6.3, R17 формируется отрица- тельный импульс подтверждения приема байта (/ACK) для интерфейса Centronics.PS. Извиняюсь за излишние подробности в описании, которые могут показаться смешными для профессионалов :) Но, профессионалы могли бы и сами сваять такой девайс при необходимости :)
PPS. Схема случайно попалась мне на глаза при наведении порядка в старых бумагах. И я, вспомнив чей-то вопрос в конфе, решил поделиться этой находкой со страждущими :) Так что при мон- таже проверяйте хотя бы распиновки микросхем - вдруг во вре- мя перерисовки схемы вкралась ошибка! Короче, будьте внима- тельны и аккуратны. Все у Вас получится.
Автор не несет никакой ответственности
за любые последствия использования данного материала.
PPPS. Отзывы, замечания, вопросы принимаю мылом по адресу:
FidoNet: 2:50/381.21 Victor Chernov