Что может ZX Spectrum. 2.4. ТЕЛЕФОННЫЙ НОМЕРОНАБИРАТЕЛЬ.

Я радиолюбитель

2.4. ТЕЛЕФОННЫЙ НОМЕРОНАБИРАТЕЛЬ.

Другим приложением схемы 2.1 может быть реализация с помощью SPECTRUM кнопочного номеронабирателя телефонного аппарата. Временная диаграмма сигнала набора номера приведена на рис 2.4.

На этом рисунке верхний уровень соответствует замкнутому состоянию телефонной линии, а нижний - разомкнутому. Частота двойных импульсов набора номера должна быть 10 имп/сек (допускается 8 - 11). Время между пачками импульсов не мене 0,6 с. Для реализации режима набора номера нормально замкнутые контакты реле К1 включаются в разрыв телефонной линии, снимается трубка и запускается программа 2.8.

Программа 2.8.

3 PRINT AT 8,8; "SOLON 268-55-58"

5 PRINT AT 10,6;"PRESS NUMBER KEY 0-9"

18 IF INKEY$ = "1" THEN LET C=l: GO SUB 1100

20 IF INKEY$ = "2" THEN LET C=2: GO SUB 1100

30 IF INKEY$ = "3" THEN LET C=3: GO SUB 1100

40 IF INKEY$ = "4" THEN LET C=4: GO SUB 1100

50 IF INKEY$ = "5* THEN LET C=5: GO SUB 1100

60 IF INKEY$ = "6* THEN LET C=6: GO SUB 1100

70 IF INKEY$ = "V THEN LET C=7: GO SUB 1100

80 IF INKEY$ = "8" THEN LET C=8: GO SUB 1100

90 IF INKEY$ = "Г THEN LET C=9: GO SUB 1100

100 IF INKEY$ = "0" THEN LET C=10: GO SUB 1100

200 GO TO 18

1100 FOR N=1 TOG

1110 FOR I=1 TO 3

1120 OUT 254,24: OUT 254,0

1130 NEXT I

1140 PAUSE 3

1150 NEXT N

1160 RETURN

Нажимая на цифровые клавиши 0-9 можно набрать требуемый номер. При выключенном компьютере телефоном можно пользоваться в обычном режиме. Программа 2.8 может быть усовершенствована дня повышения надежности работы и удобства пользования. Как уже отмечалось, при использовании команд OUT в программе на бейсике можно сформировать выходной сигнал с частотой не более 100 Гц. При этом формирование временных интервалов с длительностью более секунды трудностей не вызывает. Однако, при формировании импульсов телефонного набора, длительность импульсов составляет около 50 миллисекунд, что является предельно малой величиной при частоте сигнала заполнения импульса около 100 Гц. Это может при неточном подборе времязадающих элементов в схеме 2.2 вызвать нестабильность работы или даже полную неработоспособность устройства. Избежать этого можно повысив частоту заполнения в несколько раз. Такую частоту можно реализовать при использовании подпрограммы в машинных кодах. Подпрограмма 2.9 вырабатывает сигнал длительностью около 50 миллисекунд при частоте заполнения 1000 Гц.

Программа 2.9.

Мнемоника

Код

Комментарий

push of

245

Сохраним в стеке регистры

push be

197

af и Ьс

Id c,35

14

Поместим в регистр с

35

число периодов сигнала

Id b,100

6

Поместим в регистр b

100

число в диапазоне 1-255

определяющее частоту

Id a,24

62

Установим 1 на выходе

24

устройства

out 254,a

211

254

dec b

5

Задержка

jr nz,-3

32

253

Id a,0

62

Установим 0 на выходе

0

устройства

out 254,a

211

254

Id b,100

6

100

dec b

5

Задержка

jr nz,-3

32

253

dec с

13

Начнем следующий период

jr nz,-21

32

сигнала 235

pop bc

193

Восстановим be и af

pop af

241

ret

201

Возврат в бейсик

Программа 2.9 используется в качестве подпрограммы в программе 2.10.






Рекомендуемый контент




Copyright © 2010-2019 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.