Периферия своими руками 1993 г.

Интерфейсы принтера - параллельный интерфейс принтера.


7. ИНТЕРФЕЙСЫ ПРИНТЕРА.

Существует множество разновидностей печатающих уст-
ройств. Они различаются как по принципу действия - матрич-
ные, струйные, лепестковые, термические и т.д., так и по
применяемым в них интерфейсам связи и протоколам обмена с
компьютером - параллельным - HPnp(IFSP), ИРПР-М(CENTRONICS)
и др., и последовательным - C2(RS-232C, V24), ИРПС (CL) И др.
Для того, чтобы подключить принтер. Ваш компьютер необходимо
осиастить соответствующим интерфейсом, а также загрузить
программную поддержку (драйвер) этого интерфейса.

7.1. Параллельный интерфейс принтера.

Рассмотрим два наиболее распространенных параллельных
интерфейса - ИРПР-М (CENTRONICS) н ИРПР. Чаще всего в ком-
пьютерах используется упрощенный вариант CENTRONICS с мини-
мально достаточным числом линий связи. Эти линии, названия
сигналов, а также два основных типа разъемов принтера отоб-
ражены в таблице 2.

Остальные линии интерфейса в упрощенном варианте не ис-
пользуются. Передача данных от компьютера к принтеру осу-
ществляется с помощью сигналов СТРОБ и ЗАНЯТ (рис.31). Прин-
тер выставляет сигнал ЗАНЯТ в лог. 1 в случаях ввода данных,
состоямия "ошибки", переполнения буфера и т.п. Компьютер по
этому сигналу приостанавливает передачу данных и не передает
импульс с лог. о по линии СТРОБ до тех пор, пока принтер не
перейдет в состояние готовности, то есть лог. О на линии ЗА-
НЯТ. Принтер считывает данные с линий D0-D7 только после то-
го, как сигнал СТРОБ принял состояние лог. 0. Длительность
импульса СТРОБ с лог. о ие менее-0,5 икс.

Для реализации интерфейса типа CENTRONICS удобно ис-
пользовать микросхему КР580ВВ55А, которая представляет собой
программируемый интерфейсный адаптер (ПИЛ). В состав ПИА

входят три 8-ми разрядных параллельных порта ввода/вывода А,
В, С. В нашей схеме (рис. 32) порт В используется для выво-
да информации DATA 0-7 иа вход принтера. По младшему разря-
ду порта С РСО передается сигнал СТРОБ, а старший разряд РС7
служит для ввода сигнала ЗАНЯТ принтера. Порт А зарезервиро-
ван под джойстик. Программа поддержки интерфейса заносит в
управляющий регистр ПИА число 136, что соответствует на-
стройке ПИА в режим вывода по порту в и четырем младшим раз-
рядам порта С и ввода по 4-м страшим разрядам порта С.

Заметим, что после включения питания, в результате RE-

SETa, все порты ПИА настраиваются в режим ввода информации.
Кроме того, адресация порта А выбрана таковой, что позволяет
использовать его в качестве интерфейса джойстика, который
может быть подключен, как показано на рис. 32. Джойстик бу-
дет выбираться при нуле на шииах А5, RD, I0RQ, что соответс-
твует адресации KEMPST0N интерфейса.

Принтер подсоединяется к интерфейсу с помощью кабеля
длиной 1,5-2 метра.

Для увеличения нагрузочной способности на выходе интер-
фейса желательно включить буферный элемент, в качестве кото-
рого можно использовать любые ТТЛ микросхемы без инверсии,
например, К155ЛП4, К155ЛП10, К155ЛП11, К555АП5, К555АП6,
К589АП16.

Интерфейс ИРПР - параллельный интерфейс, отличающийся
от CENTRONICS как полярностью сигналов, так и протоколом об-
мена . В упрощенном варианте для работоспособности интерфей-
са, кроме 8-ми информационных тии DATA 0-7, необходимы два
управляющих сигнала:

- SC - строб источника, аналогично сигиалv СТРОБ интер-
фейса CENTRONICS, в низком уровне свидетельствует о досто-
верности информации на шинах DATA 0-7;

- АС - запрос приемника, в состоянии 0/1 сигнализирует
о готовности/неготовности принтера к приему данных, т.е.
аналогичен сигналу ЗАНЯТ интерфейса CENTRONICS.

Сигналы SC и АС связаны между собой следующим образом:

- SC изменяет состояние из лог. 1 в лог. о только при
А С = о, а из лог. 0. в лог. 1 - при АС = 1;

- АС остается в состоянии лог. 1 до тех пор, пока сиг-
нал SC не изменит свое состояние из лог. о в лог. 1.

Несмотря на отличия в протоколах обмена, схема и прог-
рамма поддержки интерфейса CENTRONICS вполне могут работать
с принтерами, оснащеииыми интерфейсом ИРПР. Для этого необ-
ходимо инвертировать информационные линии DATA 0-7 и буфери-
эировать сигнал SC, так как в ИРПР требуются токи нагрузки
около 40 мА. Сигнал АС используется вместо сигнала ЗАНЯТ, а
сигнал SC вместо сигнала СТРОБ. В качестве инверторов и бу-
феров можно применить микросхемы "Исключающее ИЛИ" - К155ЛП5
(Рис. 33). В этом случае, подавая на вторые входы элементов

микросхем лог.1 или лог.0, Вы получите на выходах инвертиро-
ванный или неинвертированиый сигнал. Такии образом. Ваш па-
раллельный интерфейс будет универсальный.

7.1.1. Программа CENTRON I С S.

Програииа поддержки интерфейса "CENTRONICS", приведен-
ная ниже, обеспечивает выполнение коианд LLIST, LPRINT, а,
также, по коианде "RANDOMIZE USR 23370" позволяет получать
"твердую" копию текста с экрана.

5B80

20

60

C5

D5

E5

06

08

1A

5B88

FE

FE

20

ОС

1A

EE

FF

BE

5B90

20

10

23

14

10

F6

18

19

5B98

1A

BE

20

06

23

14

10

F8

5BA0

18

OF

El

D1

ОС

79

01

08

5BA8

00

09

CI

4F

10

D4

3E

20

5BB0

C9

79

El

D1

CI

C9

FE

OD

5BB8

20

07

E5

21

FF

5B

36

00

5BC0

El

FE

20

38

11

F5

E5

21

5BC8

FF

5B

7E

2B

BE

3E

OD

00

5BD0

00

00

23

34

El

Fl

C5

F5

5BD8

01

BF

E2

CD

54

IF

D2

00

5BE0

OD

DB

5F

17

38

F5

Fl

05

5BE8

05

D3

3F

06

E3

F5

3E

OE

5BF0

D3

5F

3C

D3

5F

Fl

CI

FE

5BF8

OD

CO

3E

OA

18

D8

50

00

5В00

FE

06

CA

19

5B

FE

16

28

5В08

04

FE

17

20

2C

El

El

D9

5В10

El

F5

IF

30

01

41

78

18

5В18

06

F5

ЗА

FE

5B

CB

3F

21

5В20

FF

5B

96

38

OB

El

C8

47

5В28

3E

20

CD

Вб

5B

10

F9

C9

5В30

CD

F8

IF

Fl

FE

06

C8

18

5В38

EF

FE

A5

38

05

D6

A5

C3

5В40

10

ОС

FE

80

38

70

06

01

5В48

18

DE

OE

00

06

00

C5

C5

5В50

D5

78

CD

BO

22

EB

CD

7C

5В58

5B

D1

CI

CD

Вб

5B

79

C6

5В60

08

4F

FE

00

28

04

CI

4F

5В68

18

E4

Fl

78

C6

08

47

3E

5В70

OD

CD

Вб

5B

3E

A8

B8

38

5В78

02

CO

w

D3

C9

21

00

3D

01

1 OUT 127,136: OUT 95,1: LET а=РЕЕК 23631: LET b=PEEK 23632:
LET c=a+256*b+15: POKE c,0: POKE c+1,91

2 LOAD "CENTRONICS"CODE

3 CLS : PRINT FLASH 1;" +++ CENTRONICS ++ +

4 PRINT AT 5,2; "RANDOMIZE USR 23370 for COPY"

5 PRINT FLASH 1;AT 10,7;"H T К + P L U S +": STOP

6 SAVE "CENTRONICS" LINE 1: SAVE "CENTRONICS"CODE 23296,256

Программа состоит из 2-х частей: на Бейсике и в иашин-
иых кодах ZS0. После старта, Бейсик-програииа загружает коды
и настраивает интерфейс. Коды приведены в распечатке содер-
жииого паияти в шестнадцатиричной (HEX) виде. Каждая строка
распечатки начинается с четырехзначного HEX адреса первого
из восьии HEX байтов, напечатанных в этой строке. Для ввода
програии в иашиниых кодах и сохранения их иа иагнитной лен-
те предлагаеи Ваи воспользоваться програииой HEX ввода, по-
иещенной ниже.

7.1.2. Програииа HEX ввода.

Програииа предназначена для запиои/чтеиия и редактиро-
вания данных оперативной паиятн в шестнадцатиричной виде.
Програииу иеобходиио занести в память компьютера и записать
на леиту коиандой RUN 9999. После старта програииы внизу зк-
рана появляется надпись "Input start address". Необходиио
ввести 4-значный HEX адрес первого байта програииы в машин-
ных кодах, которую Вы будете заносить в паиять компьютера.
После ввода начального адреса програииа выведет на экран
этот адрес, содержащиеся по зтоиу адресу даииые и будет ожи-
дать от Вас ввода новых данных. Введите HEX данные и иажиите
клавишу Enter. Новые данные появятся иа экране. Если нажать
Enter без ввода данных, то Вы перейдете к следующему адресу.
Для перехода к предыдущему адресу используйте клавишу и. Ес-
ли вы закончили ввод даииых, то для сохранения их иа ленте
используйте клавишу S. После коиаиды S ваи иеобходиио ввести
иия програииы, начальный и конечный адрес блоха ходов.

10 CLEAR 32767: PRINT AT 7,11;"НЕХ input"
20 PRINT FLASH 1;AT 11,10;"H T К P L U S"
3 0 PRINT AT 17,11;"Use CAPS LOCK"
40 DIM W$(4)

50 INPUT " Input start address ";W$: GO SUB 400

90 CLS

100 LET D=T: DEF FN A(A$,B)=CODE A$ (В)-48-7*(CODE A$(B)>57)
110 DEF FN C(A$)"16*FN A(A$,1)+FN A(A$,2)
*120 DEF FN G$ (F) -CHRS (F+48+7*(F>9))

130 DEF FN H$(E)-FN G$(INT (E/16))+FN G$(E-16*INT (E/16))
140 DIM A$(2)

150 PRINT " Use ENTER to step forward"
160 PRINT " use U & ENTER to step backwards"
170 PRINT " Use S & ENTER to SAVE code"
180 PRINT

190 PRINT "ADDRESS DATA NEW DATA": PRINT

200 PRINT TAB 2;FN H$(INT (D/256));FN H$(D-256*INT (D/256));

TAB 10;FN H$(PEEK D);
210 INPUT A$
220 LET L-l

230 IF A$(1)-"U" THEN LET—1: GO TO 260

240 IF A$(1)="S" THEN GO TO 290

250 IF A$(1)<>CHR$ 32 THEN POKE D,FN C(A$)

260 PRINT TAB 18;FN H$(PEEK D)

270 LET D-D+L

280 GO TO 200

290 CLS : PRINT "SAVE ";CHR$ 34;: INPUT " Input name

program ";N$: PRINT N$;CHR$ 34;"CODE ";
300 INPUT " Input start address program";W$: GO SUB 400:

LET B-T: PRINT B;'V;
310 INPUT " Input end address program ";W$: GO SUB 400:

LET L-T: PRINT L-B
320 SAVE N$CODE B,L-B: PRINT, FLASH 1;AT 17,16;"END": PRINT
AT 21,3;"For contlnus press any key": PAUSE 0: GO TO 10
400 LET T-0
410 FOR Y-l TO 4

420 LET T-T+16?(4-Y)*(CODE W$(Y)-48-7*(CODE W$(Y)>57))
430 NEXT Y
440 RETURN
9999 SAVE "HEX input" LINE 10

7.1.3. Програииа COPY.

Если Ваш принтер поддерживает графический режим работы,
то его можно использовать для распечатки графических копий
экрана Вашего СПЕКТРУМа. Для этого служит програииа "СОРУ",
приведенная ниже. Программа рассчитана на работу с наиболее
распространенныии, EPSON-совместимыми, принтерани.

COPY

5 CLS : PRINT FLASH 1 ; AT 10,7 ; "H T К + P L U S +"

6 PRINT AT 20,2;"RANDOMIZE USR 23296 for COPY"
10 LOAD "COPY"CODE

20 PAUSE 0: STOP

30 SAVE "COPY" LINE 1: SAVE "COPY"CODE 23296,256

5в80

08

90

77

23

23

90

5в88

77

с1

14

10

df

79

5в90

cd

d1

79

cd

f7

сс

5в98

d1

е1

d6

08

77

fe

5ва0

47

d1

30

ad

с9

fe

80

5ва8

38

04

d6

80

18

23

cd

d1

5вв0

23

18

f1

cd

е9

ое

5вв8

21

21

с6

cd

f7

28

5вс0

е4

21

св

88

df

5вс8

05

00

82

00

81

0d

5bd0

f5

db

5f

17

38

fb

f1

5bd8

d3

3f

зе

fe

d3

5f

зе

ff

5ве0

d3

5f

00

00

00

00

00

00

5ве8

с9

ое

05

0d

с8

зе

20

cd

5bf0

d1

18

f7

33

97

е5

5bf8

21

ff

св

46

е1

с9

00

5в00

зе

88

d3

7f

зе

ff

d3

5f

5в08

00

00

00

00

00

21

f4

5в10

cd

а5

06

18

97

cd

28

5в18

зе

14

cd

f7

cc

28

5в20

05

78

fe

02

20

ее

с9

5в28

21

37

77

cd

в4

с5

5в30

78

cd

ее

od

ев

06

04

14

5в38

10

fd

cd

с1

0d

79

5в40

fe

01

20

ев

21

с f

cd

5в48

а5

с9

21

6f

23

36

5в50

7f

d5

е5

21

73

23

36

5в58

f9

23

23

36

f1

cd

f7

5в60

28

02

36

f9

ое

00

5в68

06

04

28

02

06

08

св

5в70

3f

28

04

cb

в9

св

в1

cd

5в78

f7

с5

06

10

28

02

06

Програииа "COPY" вводится в память СПЕКТРУМа аналогично
'програиие "CENTRONICS". Для получения графической копии эк-

раиа необходимо выполнить команду "RANDOMIZE USR 23296".
Программу можно модифицировать:

- РОКЕ 23551,1 - уменьшенная копия экрана;

- РОКЕ 23551,0 - увеличенная копия экрана;

- РОКЕ 23530,х - где х - величина отступа от левого

края ;

- РОКЕ 23542,у - где у от 151 до 156 - размер по верти-
кали.

Программы "CENTRONICS" и "COPY" располагаются в области
буфера принтера, поэтому при выполнении команды "NEW" они
уничтожаются.

Следует отметить, что коды управления графическим режи-
мом работы принтеров разных фирм чаото ие совпадают, поэто-
му для работы с другими моделями принтеров программа должна
быть изменена.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Посмеемся - цитаты из школьных сочинений.
Здесь был ты - Рассказ "Абсолютная власть".
Бук - Лабиринт Отражений.
Отчёт - Бадун или будун, а впрочем ккакая разница.
Di:Halt`99 - Мнение организаторов.

В этот день...   28 апреля