Слаботочка Книги

1 2 [3] 4 5 6 7 8 9 10 11 12 13

XS, YS, CS - любое, хота при значении около 20 один символ занимает весь экран. Пример использования:

10 LETXS-4:LETYS-4:LETCS-8:LETY-100

LET D$ - -SPECTRUM : GOSUB 9390 9390 LET X - (256 - XS*CS LEN D$)/2

9400 LET A - 23306 : POKE A,X: POKE A+L.Y: POKE A+2,XS: ОКЕ A+3,YS: POKE A+4,CS: LET A + A+4 : FOR I - TO EN D$ : POKE A+L CODE D$(I) : NEXT I: POKE A+L 55: RAND0M12E USR 32256: RETURN

Далее приведена программа загрузки машинных кодоа:

1 CLEAR 45500

2 FOR Х-32256 ТО 32532

3 READ а: РОКЕ х,а

4 NEXTx

5 DATA 33,15,91,126,35,34,0,91,111,60.200.38,0,41.41,41,237,75. 54,92,9,62,8,50,4,91,58,11,91,50,9,91,58,10,91,50,8,91,62,9,50. 5,91,126,35,34,2,91,7,50,6,91,58,5,91,61,32,50,58,4,91,61,32, 24,58,14

6 DATA 91,71,58,12,91,79,58,10,91,129.5.32,252,50.10,91,42,0, 91,125,3,126,50,4,91,58,13,91,71,58,9,91,128,50,9,91,42,2,91. 195.32,126,50,5,91,58,12,91,71.58,9,91,50,7,91,58,13,91,79, 197,205.164,126,193,58,7

7 DATA 91,60,50,7,91,13,32,241,58.8.91,60,50.8.91,5,32.221.58. 6.91,195,48.126,128,64,32,16,8,4,2,1,58,142,92,238,255,71, 58,141,92,160,71,58,8,91,230,248,111,58,7,91,254,192,208,31. 31.31,230,31,103.203,28.203,29,203.28.203.29.203,28,203.29. 62,88,180

8 DATA 103,58,142,92,166,176,119,58,7,91,71,230,7,246,64,103, 120,31,31,31,230,24,180,103,120,23,23,230,224,111,58,8,91, 71,31,31,31,230,31,181,111,235.33.156.126.120.230.7,79.6.0, 9.70.26,33,6.91.203.70.40,3.176,18.201,47,176,47,18,201

10 1£T xs-4: LET ys-4: LET cs-8: LET y-lOO: LET d$- Spectrum :

GO SUB 9390 20 STOP

9390 LETx-(256-xs*cs*LENd$)/2

9400 I£T a-23306: POKE a,x: POKE a+l,y: poke a+2,xs: poke a+3,ys : POKE a+4,cs: LET a-a+4: FOR HI TO LEN d$: POKE a+i.CODE d$(i): NEXT i: POKE a+i,255: RANDOMIZE USR 32256: RETURN Эта программа загружается, когда запускается основная программа. Ее можно сохранить отдельно:

SAVE large CODE 32256,277 и загружать LOAD large CODE 32256,277

вслед за обычной загрузкой основной программы: LOAD

Изменяя цвет чернил, бумаги, рамки и используя мигание можно создавать красивые надписи на экране.

При использовании данной профаммы с устройствами описанными в следующих главах нужно руководствоваться следующими правилами:

1. Загрузите программу LARGE обычным способом и остановить мапоггофон после загрузки.

2. Наберите RUN. Программа начнет работать и произойдет загрузка машинных кодов в область памяти с 32256 ДО.3532, затем на экране появится надпись SPECTRUM. После этого выполиеяие программы завершится в соответствии со следующим в строке 20 оператором STOP.

3. Загрузите программу, которая должна использовать программу LARGE , например программу PHOTO из главы 3:Можв1д также использовать команду MERGE для присоединения основной программы и программы LGE . Затем можно присоединить еще одну программу, s

Например так можно поступить с программой TIME фивеяенноА ниже, необходимо только зафузить строки с 50 до 70: строки 9390,9400остаются от присоединения LARGE и первой профаммы. Будте..однакО анимательны, не допускайте дублирования номеров строк, это существенно для работы второй программы, так как строка 10 второй профаммы будет стерта строкой 10 первой. Может показаться непонятным почему для программы на БЕЙСИКЕ программы -LARGE выбраны номера строк 9390 и 9400. Этот выбор номеров случаен, .одна1ЕО эта профамма расположена выше любой программы и не пересе кается с ней. В ctpOKe 9390 автоматически определяется горизонтальная координата X по которое размещаются буква и слово. В строке 9400 делается остальное. Вели пользователь сам хочет задать X, то строка 9390 должна быть уничтожена или заменена другой подпрофаммой задающей координату X, такой как, например, строка 80 в программе PHOTO , где

Х-20+(70х (2:;-1)) и следующий GOSUB 9400.

С помощью этой программы можно создать большие электронные часы. Для этого используются ячейки памяти с адресами 23674, 23673, 23672 в которых хранится текущее время.

10 РОКЕ 23672,0: РОКЕ 23673,0: РОКЕ 23674,0

11 LETm-0:LETs-O - .. ---

20 LET t-INT ((65536 РЕЕК 23674Ф256*РЕЕ1СгзбГЗ+РЕБК 23672)/5б) 30 IPsr59THE№CLS < У

40 LET m-INT (t/60): LET s- (ш*60) 45 IFm-l AND s-30 THEN BEEP 1,10

50 LET ys-4: LET xs-4: LET cs-8: LET y-10: LET d$-STR$ m: GO SUB 9390 60 LET y-100; LET d$-STR$ s: GO SUB 9390 70 GO TO 20

9390 LET x-(256-xs*cs*LEN d$) /2

9400 LET a-23306: POKE a,x: POKE a+1 ,y: POKE a+2s: POKE a+3.ys: POKE a+4,cs: LET a-a+4: FOR i-1 TO LEN d$: POKE a+i.CODE d$(i) : NEXT i: POKE a+i,255: RANDOMIZ E USR 32256: RETURN

Эта профамма позже будет использована при описании устройств для фотографии.



3. УСТРОЙСТВА ВВОДА

Компьютер СПЕКТРУМ , как и любой другой цифровой компьютер, оперирует только цифровыми (дискретными) сигналами. Внешние устройства, такие как ZX принтер и микродрайвер подсоединяются к СПЕКТРУМУ и обмениваются с ним информацией в виде 8-разрядных двоичных слов. В даннЫ) главе сначала будет описана базовая схема аналого-цифрового преобразователя, а затем ряд применений АЦП и идеи дяя экс11)иментироваяия.

3.1. ОПЕРАТОР IN

Сигнал может бль принят СПЕКТРУМОМ в результате выполнения оператора БЕЙСИКА. IN, адрес.

Для реализации этой возможности сигнал, конечно, должен быть подан на разъем СПЕКТРУМА , на те выводы которые соединены с шиной данных к которой внутри компьютера присоединены ПЗУ, ОЗУ, микропроцессор Z80 и т.д. Дяя того чтобы посмотреть, что происходит на шине данных необходимо присоединить осциллограф к любому из контактов D0-D7 на разъеме. На шине данных не %дет изменяющегося сигнала до тех пор, пока не будет запущена какая-либо программа. При работе программы на шине данных появляется сигнал, изменяющийся с частотой в несколько мегагерц. Форма отдельного сигнала не имеет значения, поскольку компьютер выполняет посылки данных из одной части компьютера в другую только в виде 8-разрядных слов. Будте осторожны! Не допускайте коротких замыканий контактов разъема D0-D7 на землю или между собой.Это может привести к выходу компьютера из строя. Всегда с большой осторожностью прикасайтесь или подключайтесь к разъему. Замыкание линий адреса и данных с шинами питания опасно для электронной схемы СПЕКТРУМА .

Дяя ввода данных в компьютер машина должна приостановить выполнение текущей программы, обратиться к источнику данных, принять их и продолжить выполнение программы. Для выполнения всего этого необходима схема-интерфейс. Интерфейс имеет адрес, по которому программа обращается именно к нему. Адреса представляют собой числа в диапазоне от О до 65535 (2 в степени 15), задаваемыми О и 1 на адресных линиях А0-А15. Если говорят, что внешнее устройство имеет адрес 31, то это означает, что компьютер устанавливает на шине адреса следующие сигналы:

А15 А14 А13 А12 АН А10 А9 А8 А7 А6 А5 А4 A3 А2 А1 АО 0000000000000000

Интерфейсная схема дешифрирует этот сигнал с помощью специального устройства и подает данные на шину данных D0-D7. Все это происходит за микросекунды и Определяется скоростью работы TTL и КМОП микросхем использованных в схеме интерфейса. Например число 225 (11111111 в двоичной форме) будет введено из внешнего устройства с адресом 31 если на шине данных будут установлены 1 на всех разрядах шины данных и на линии адреса А5 будет установлена Г. (Отметим, что это неполная дешифрация адреса допускается при малом числе внешних устройств).

Простая программа на БЕЙСИКЕ демонстрирует ввод информации из внешнего устройства:

10 PRINT AT О,; IN 31

20 GOTO 10

в этом примере компьютер постоянно считывает данные по адресу несуществующего устройства с адресом 31 и выводит в верхнем левом jroy экрана число 255, т.к. при отсутствии внешних сигналов на линиях данных устанавливается состояние Г.

3.2. АНАЛОГО-ЦИФРОВОЙ ПРЕОБРАЗОВАТЕЛЬ

Множество сигналов, которые необходимо ввести в компьютер, имеют аналоговый вид. Это, например, сигналы полученные от датчиков температуры, освещенности и звука, удаленных переключателог ввутреиних и внешних источников напряжения, .rfraffi** ft..

Первое предлагаемое устройство прелстаяляет собой 8-кгн8льный аналого-цифровой преобразователь с 8 отдельными входами, который автоматически преобразует входные сигналы в 8-разрадные чисяа. Основой устройства является интегральная микросхема типа 7581.

ь-й-

.ТО -й-

Рис.3.1 Принципиальная

Основная характеристика этой микросхемы: 1. Непосредственное подключение к компьютеру. 2 5-вольтовое питание от компьютера.

3. Время преобразования 1 канала - 50 мксек (всех 8 -400 мйсек).

4 Диапазон входного аналогового сигнала 0-10 В.

5 Непосредственная адресация для ввода цифровых даиных от каждого (В данной разработке используются адреса от 24 до 31 ).



6. Внутренний порт данных 8x8 (8 восьмиразрядных регистров). На рис.3.1 изображена электрическая схема.

Схема весьма простая. Использованы 3 микросхемы 7581, 74LS27 и 7414. Линии данных D0-D7 и линии адреса А0-А2 непосредственно присоединены к МС 7581. Сигнал выборки (CS)* МС 7581 формируется двумя элементами МС 74LS27 из 3-х сигналов компьютера: A5,RD*,I0RQ*. Работа формирователя описывается таблицей истинности:

ш>*

lORQ*

* - знак инверсии

CS (ВК - выбор кристалла).

Микросхема 7581 ждет логического О на входе CS. При появлении О цифровое значение сигнала поступившего по 8 аналоговому входу передается в порт с адресом 31. По таблице истинности видно, что это происходит когда на выводах RD* (чтение), IORQ* (запрос ввода/вывода) установлен логический 0. Каналы 1-8 выбираются с помощью адресных входов А0,А1 и А2 микросхемы 7581:

Канал

Адрес в команде IN

Входное напряжение в диапазоне О-10 В преобразуется в двоичное число в диапа-зоне 0-255. На вывод 16 (ALE) подается напряжение 5 В, на вывод 10 (VREF) - 10 В

и вывод 1 (BOFS) к общему проводу (ОВ). Этот режим работы микросхемы 7581 называется однополярный аналоговый вход и цифровой выход в прямом коде. Возможен также режим работы с биполярным входным сигналом или выходной цифровой сигнал может быть представлен в дополнительном коде, но эти возможности здесь не используются. На вход 15 требуется подать тактовую частоту 1,6 МГц, которая формируется одним из 6 элементов микросхемы 7414 (триггер Шмидтта с инверсией). Оставшиеся 5 инверторов используются в схеме умножения напряжения. В ней также используются диоды типа 1N4148 и конденсаторы 33 нф. Полученное напряжение фильтруется конденсатором 10 мкФ и ограничивается стабилитроном 10 В. Последний элемент микросхемы 74LS27 использован для формирования сигнала разрешения записи, который будет необходим для работы цифро-аналогового преобразователя описанного в главе 4. На плате АЦП установлен также 12 (или 16)- контактный разъем, необходимый для подключения ЦАП к компьютеру.

3.3. ОПИСАНИЕ КОНСТРУКЦИИ АЦП

Как и многие КМОП микросхемы, 7581 очень чувствительна к статическому электричеству. Нужно быть очень осторожным беря микросхему в руки. Микросхема должна транспортироваться в првввдцщей фольге или проводящем пенопласте. Используемые инструменты и оборудование должны быть заземлены.

До монтажа элементов подготавливается макетная монтажная плата и разъем, который располагается на стороне элементов. Для подключения микросхем лучше использовать панельки. Для7581: используется 28контактный разъем, который можно сделать и из 40-контактного.:3ёмля и питание 12 В подключаются через 2 мм.гнез-да.

Теперь о соединении элементов. В компьютере, к сожалению, используется 8 параллельных линий данных, а не отдельные провода как например в аудиосистемах. Эти 8 проводов должны соединять между собой все элементы компьютера. Дополнительная сложность состоит в том, что компьютер и микросхемы не могут использовать вводы для последовательной передачи сигналов данных и адреса. Следовательно нельзя использовать печатные проводники одновременно для шины данных D0-D7 и шины адреса А0-А15. Для соединения разъема компьютера и микросхем нужна довольно сложная система проводов. Несмотря на минимизацию соединений всего требуется 33 изолированных провода и несколько неизолированных проводов. Соединение элек1ентов производится после их размещения на шште. ................

Передразмещением микросхем необходимо решить, дет ли нужен ЦАП, описанный в главе 4. Если ЦАП потребуется, то сейчас как раз подходя11у1й момент установить:12 илиАбкбнтактный разъем к. плате со стороны печатных проводников. Однако можно установить этот разъем и поспе, если потребуется.

3.4. ИСПЫТАНИЕ АЦП

Сначала следует произвести внешний осмотр платы, проверить ошибочные соединения, короткие замькания и другие виды ошибок. Однажды я неверно прочитал Руководство по СПЕКТРУМУ и перепутал при подсоединении к разъему верх и низ; только по счастливой случайности ничего не вышло из строя. Закорачивание некоторых линий может в любой момент вывести из строя компьютер и/или Вашу самоделку. Поэтому проверте отсутствие коротких замыканий на разъеме с помооц>ю оммет-W; усы от припоя могут стать причиной непоправимого повреждения.

Наконец, вставте плату в разъем СПЕКТРУМА и включите его. Должен наблюдаться обычный порядок включения компьютера. Если он нарушен, то отсоедините



1 2 [3] 4 5 6 7 8 9 10 11 12 13
Яндекс.Метрика