Академический Документы
Профессиональный Документы
Культура Документы
Г Бартенев
Б.Е.Алгинин
ОТ САМОДЕЛОК НА
ЛОГИЧЕСКИХ
ЭЛЕМЕНТАХ ДО
МИКРОЭВМ
Дорогие друзья!
Эта книга для тех из вас, кто хотел откажется отпираться, электронный
бы на практике познакомиться с одной из звонок будет проигрывать мелодию
наиболее перспективных областей только в нужный момент, а микроЭВМ
электроники — цифровой электроникой. не будет грудой электронных
Относительно недавно применявшаяся компонентов, заключенных в красивый
только в вычислительных устройствах, пластмассовый чехол.
теперь она широко используется в В этой книге вы найдете описание
промышленности и быту. Станки с самых различных конструкций цифровой
числовым программным управлением электроники — от простейшего
обрабатывают разнообразные детали, генератора звуковой частоты до
электронные часы и таймеры сообщают достаточно сложной микроЭВМ. Все эти
точное время и следят за устройства каждый из вас может собрать
технологическими процессами, кодовые самостоятельно. Однако прежде чем
замки надежно охраняют вход в приступить к работе, надо познакомиться
помещения, электронные звонки с основными требованиями,
извещают о приходе посетителей, предъявляемыми к принципу работы,
электронные весы определяют цену электрическим параметрам и качеству
покупки... И, конечно, компьютеры. монтажа электронных схем.
Мини- и микро-, бытовые и Практическое знакомство со схемами
профессиональные – они все уверенней конкретных устройств, приведенных в
входят в нашу жизнь. первом разделе, не только поможет
Основу всех этих и многих других понять, как из отдельных элементарных
устройств составляют цифровые схемы – узлов цифровой электроники создаются
логические, триггеры, счетчики, сложные устройства, но и даст
шифраторы, коммутаторы и др. возможность проявить себя в творчестве,
Понимание работы этих схем и конечной целью которого может быть
умение конструировать на их базе создание микроЭВМ, описанной во
различные устройства являются залогом втором разделе книги.
того, что кодовый замок не
ЧАСТЬ I. 27 УСТРОЙСТВ НА ЭЛЕМЕНТАХ ЦИФРОВОЙ
ЭЛЕКТРОНИКИ
1+1=?
Из школьного курса арифметики вы
знаете, что 1 + 1 = 2 . Всегда ли это
верно? Этот вопрос, очевидно, вызовет у
вас недоумение. Но не будем спешить с
выводами.
Вы никогда не задумывались, почему
в одном килограмме тысяча граммов, а в
одной минуте шестьдесят секунд? Секрет
же здесь
заключается в использовании различных Итак, сколько же будет 1 + 1?Если мы
систем счисления. В подавляющем имеем дело с десятичной системой
большинстве случаев мы пользуемся счисления, то, конечно, два! И в
привычной десятичной системой троичной, пятеричной и т. д. ... ичной
счисления, а при отсчете времени – тоже два. А в двоичной? В этой системе
шестидесятеричной. счисления, как вы знаете, используются
Любое положительное число может два символа: 0, 1. Значит, 1 + 1 не может
являться основанием системы счисления. быть равно 2, так как такого символа в
Например, в привычной нам десятичной данной системе счисления простонет.
системе счисления используются десять Как поступают в десятичной системе,
символов(цифр): 0...9. когда один разряд числа «заполнен»?
Десятичная система счисления Добавляют к следующему по
является позиционной. Так, единица, старшинству разряду единицу. Поступим
стоящая крайней справа в десятичном так же и в этом случае. Оказывается, в
числе 1111, означает «один»,а стоящая двоичной системе счисления 1 + 0 = 1, а 1
слева от нее — «десять».Иначе говоря, + 1 = 10!
значение цифры зависит от ее места В цифровой электронике
(номера разряда)в числе. Счет разрядов используется двоичная система
ведут с 0.Крайний справа, так счисления, а для выдачи информации в
называемый младший значащий разряд цифровых электронно-вычислительных
— нулевой, следующий — первый и машинах (цифровых ЭВМ), в числе
т.д.Крайний слева разряд (в нашем прочих,— шестнадцатеричная. Почему
примере — третий) называют старшим используются именно эти системы, мы
значащим разрядом. Каждый разряд расскажем позже, а пока научимся
имеет в числе свою значимость или, как переводить числа из одной системы в
принято говорить, вес. Так, в десятичном другую и производить над
числе вес первого разряда больше веса
нулевого в 10раз, второго — в 100 и т. д.
ними арифметические действия. разряда в состав числа не входит. В итоге
Как уже говорилось, для записи чисел получим, что 10110112 = 9110.
в двоичной системе используются два Существует еще один способ
символа: цифры 0 и 1. Следовательно, в перевода числа из двоичной системы
каждом разряде двоичного числа могут счисления в десятичную, называемый
быть записаны либо 1, либо 0. В методом удвоения. Данный способ хорош
двоичном числе вес каждого тем, что не требует знаний степени числа
последующего (по старшинству) разряда 2. Предлагаем вам самим разобраться с
увеличивается относительно действиями по этому методу, используя
предыдущего в два раза. Так, в двоичном пример на следующей странице.
числе 1011011 единица в нулевом Для того чтобы перевести десятичное
разряде эквивалентна десятичному числу число в двоичное, можно
«один». В первом разряде единица воспользоваться способом, при котором
эквивалентна десятичному числу «два», в десятичное число последовательно делят
третьем — «восемь», четвертом — на 2 до тех пор, пока частное не станет
«шестнадцать» и т. д. Иначе говоря, меньше делителя. Полученная при этом
десятичный эквивалент единицы какого- последовательность, состоящая из нулей
то разряда двоичного числа равен двойке, и единиц, читаемая от последнего
возведенной в степень, показатель частного, и есть искомое двоичное число.
которой равен порядковому номеру Арифметические операции с
указанного разряда. Таким образом, двоичными числами производятся так
чтобы перевести двоичное число 1011011 же, как и с десятичными, нужно только
в десятичное, необходимо сложить 64 не забывать, что в том разряде, где
(26), 16 (24), 8(23), 2(21), 1(20). Десятичные складываются две единицы,
эквиваленты разрядов, в которых
записаны 0, в сложении не участвуют,
так как 0 показывает, что значение этого
Например:
1001011 1101110
+ 1101101 – 1001111
10111000 0011111
1011 110111│101_
x
101 101 1011
1011 _011
0000 000
1011 _111
110111 101
_101
101
000
Можно сказать, что вся схемотехника контакты разомкнуты, тока в цепи нет и
цифровых устройств стоит на трех китах лампа не горит (выходной сигнал 0). При
— трех логических элементах, на базе нажатии на кнопку SB1 (подается сигнал
которых можно изготовить практически 1) ее контакты замыкаются, но тока в
любое цифровое устройство. Эти цепи по-прежнему нет, так как
элементы реализуют три основные разомкнуты контакты кнопки SB2, и
логические функции: И, ИЛИ, НЕ. поэтому лампа не горит (сигнал 0). То же
Попробуем смоделировать работу самое произойдет, если отпустить кнопку
логического элемента при помощи SB1 и нажать кнопку SB2. Если же
простейшей электрической цепи, а одновременно нажать обе кнопки (подать
результаты анализа этой работы запишем сигнал 1), то ток, появившийся в цепи,
в таблицу, называемую таблицей вызовет свечение лампы (сигнал 1).
истинности. Записав в таблицу истинности (в
Составим последовательную цифровой форме) указанные действия и
электрическую цепь из двух кнопочных реакцию на них лампы, вы увидите, что
выключателей, лампы накаливания и сигнал 1 на выходе
источника питания (рис. 1, а). Если мы не
нажимаем на кнопки (т. е. имитируем
подачу 0), то в связи с тем, что их
SB1 SB2 HL1
0 0 0
1 0 0
0 1 0
1 1 1
б в
(лампа горит) появляется только тогда, одном, или на другом, или на обоих
когда и на первом, и на втором входах входах этого элемента присутствуют
одновременно присутствуют сигналы 1 сигналы 1 (рис. 2, б). Поэтому
(рис. 1, б). Именно поэтому логический логический элемент или часто называют
элемент И иногда называют элементом элементом типа «что-нибудь или все».
типа «все или ничего». Условное У логического элемента ИЛИ (рис. 2,
графическое обозначение этого элемента в) в интегральном исполнении, как
(УГО) приведено на рисунке 1, в. правило, 2 или 4 входа, а их
Хотя у логического элемента И (рис. функциональное назначение
1, в) может быть любое число входов, в обозначается буквами ЛЛ (например,
интегральном исполнении они К155ЛЛ1).
выпускаются 2-, 3-, 4- или 8- входовыми И последний, третий «кит» цифровой
и имеют функциональное обозначение электроники — логический элемент НЕ.
ЛИ (например, К155ЛИ1). Для моделирования его работы
А теперь таким же образом используем схему, приведенную на
смоделируем работу элемента ИЛИ (рис. рисунке 3, а.
2, а). Даже беглого взгляда на схему Обратите внимание, что, хотя сигнал
будет достаточно, чтобы понять, что для 1 на входе отсутствует (кнопка не
зажигания лампы необходимо нажать или нажата), лампа горит (выходной сигнал
одну кнопку, или другую, или обе вместе. 1). Но как только на вход поступает
Иначе говоря, сигнал 1 на выходе сигнал 1 (нажимается кнопка), лампа
элемента ИЛИ будет тогда, когда или на гаснет.
SB1 SB2 HL1
0 0 0
1 0 1
0 1 1
1 1 1
б в
SB1 HL1
0 1
1 0
б в
X1 Х2 Y
0 0 1
1 0 1
0 1 1
а 1 1 0
X1 Х2 Y
0 0 1
1 0 0
0 1 0
1 1 0
б
X1 Х2 X3 X4 Y
0 0 0 0 1
1 0 0 0 1
0 1 0 0 1
1 1 0 0 0
0 0 1 0 1
1 0 1 0 1
0 1 1 0 1
1 1 1 0 0
0 0 0 1 1
1 0 0 1 1
в 0 1 0 1 1
1 1 0 1 0
0 0 1 1 0
1 0 1 1 0
0 1 1 1 0
1 1 1 1 0
ЗНАКОМЬТЕСЬ — ТТЛ
ЧИТАЕМ СХЕМЫ
б в г д
а б в
ЧАСТОТОМЕР НА МИКРОСХЕМЕ
ИМПУЛЬСНЫЙ ЗОНД
ГЕНЕРАТОР ИМПУЛЬСОВ
ВЫЗЫВНОЕ УСТРОЙСТВО
ЭЛЕКТРОННАЯ «КУРИЦА»
Для тех из вас, кто помимо цифровой последних вызвана тем, что при подаче
электроники занимается сборкой питания мультивибратор, например, на
радиоприемных или усилительных элементах DD1.3, DD1.4 не запустится,
устройств, незаменимым помощником в так как ток заряда конденсаторов С1 и
их ремонте и налаживании может С2, зависящий от их емкости и
оказаться пробник для проверки сопротивления резисторов R1, R2, будет
низкочастотных и высокочастотных достаточно мал. Поэтому ни на одном из
трактов (рис. 24). Он содержит два резисторов напряжение не может
генератора: низкочастотный на превысить уровень 1 и на обоих выходах
элементах DD1.3, DD1.4 и мультивибратора будут присутствовать
высокочастотный на элементах DD2.1, уровни 1. При подключении узлов
DD2.2. У пробника два выхода с запуска на выходе элемента DD1.1
возможностью регулировки амплитуды появляется уровень 0, а на выходе
сигналов на каждом из них от 0 до 2 В. элемента DD1.2 — уровень 1. В
Генераторы собраны по схеме результате на выходе элемента DD1.4
симметричных мультивибраторов, к появляется уровень логического 0 и
выходам которых подключены узлы мультивибратор запускается.
запуска. Необходимость применения
Рис. 24. Пробник для проверки приемников.
D — информационный вход (на него вида триггера высокий (рис. 26, а) или
подается информация, предназначенная низкий (рис. 26.б) логический уровень
для записи в триггер); напряжения, во втором —
C — вход синхронизации; положительный (рис. 26, в) или
T —счетный вход. отрицательный (рис. 26, г) перепад
Если состояние триггера определяется напряжений, т.е. переход напряжения от
последовательностью только уровня 0 к уровню 1 или наоборот.
информационных сигналов, то его Если запись информации в триггер
называют асинхронным, так как он не происходит при подаче уровня 1 или
нуждается в специальном сигнале положительного перепада напряжений,
управления записью информации то соответствующие входы называются
(сигнале синхронизации или тактовом прямыми, если уровня 0 или
сигнале). Если же такой сигнал отрицательного перепада напряжений —
необходим, то триггер называют инверсными.
синхронизируемым (тактируемым). В При чтении схем цифровых устройств
этом случае информация в триггер, как, обращайте внимание на обозначение
впрочем, и в другие элементы входов, так как триггеры одного типа в
последовательностного типа, одной серии интегральных схем могут
записывается только при наличии иметь различные типы входов и,
сигнала синхронизации на специальном соответственно, различный принцип
входе — входе синхронизации или действия. Например, D-триггеры серии
тактовом входе (вход С). Сигнал К155, используемые в описываемой
синхронизации может иметь вид как далее микроЭВМ, имеют прямой
постоянного уровня напряжения динамический (К155ТМ2) и прямой
(статическая синхронизация), так и статический (К155ТМ5) входы
импульса (динамическая синхронизация). синхронизации, что определяет их
В первом случае на входе синхронизации назначение и вид сигнала синхронизации.
должен быть определенный для данного
а б в г
ПРИСТАВКА К БУДИЛЬНИКУ
ГЛАВА 7. КОДИРОВАНИЕ,ДЕКОДИРОВАНИЕ И
РАСПРЕДЕЛЕНИЕ ИНФОРМАЦИИ
Многие из вас уже успели поработать явно недостаточно. Например, если
если не на ЭВМ, то с дисплей имеет восемь 7-сегментных
микрокалькуляторами. Но при этом вы знакомест (разрядов отображения), то
вряд ли задумывались, кто же «открывает проводов будет 15 вместо 56 (7 х 8 = 56).
дверь» информации, которую вы вводите Как же этим вычислительным
с клавиатуры. Другими словами — как устройствам удается принимать и
схема, которая может обрабатывать выдавать информацию? Дело в том, что в
только двоичные сигналы, не только этом им помогают специальные
понимает «язык» десятичных чисел или устройства цифровой электроники:
буквенных символов, но и шифраторы, дешифраторы,
«разговаривает», выводя их на мультиплексоры и демультиплексоры. С
устройство отображения— дисплей. Тем включением этих устройств в схемах вы
более что для кодирования всех столкнетесь при сборке конструкций, а
используемых буквенных и цифровых пока познакомьтесь с их назначением и
символов, арифметических знаков и структурой.
знаков препинания явно недостаточно
одного двоичного разряда, которому
соответствует одна группа контактов,
находящихся под каждой кнопкой.
Кстати, если заглянете в
микрокалькулятор, то увидите, что
проводов для управления дисплеем тоже
ШИФРАТОРЫ И ДЕШИФРАТОРЫ
а б в г
д е ж з
64
После включения питания устройство коммутирующий цепь нагрузки (лампа
устанавливается в начальное состояние. ЕL1).
На выходе элемента DD7.2 присутствует Одновременно уровень 0 с выхода
уровень 0, который запрещает элемента DD6.3 разрешает работу
прохождение импульсов с тактового счетчиков, выходы которых подключены
генератора (DD1.1 — DD1.3) на триггер к управляющим входам мультиплексоров
управления нагрузкой (DD6.2, DD6.3). На DD4, DD5.
выходе элемента DD6.3 этого триггера — Когда двоичный код счетчиков
уровень 1, который устанавливает в становится эквивалентен номеру
начальное состояние счетчики DD2, DD3. выбранного переключателями SB1 и SB2
Установив необходимую выдержку входа, на выходах мультиплексоров
времени переключателями SA1, SA2, появляется уровень 1, формирующий на
нажимают кнопку «Пуск» (SB1). выходе элемента DD6.4 уровень 0. Он
Отрицательный импульс с выхода вызывает появление уровня 0 на выходе
одновибратора DD7.3, DD7.4 элемента DD7.2. Сигнал с этого выхода
устанавливает уровень 1 на выходе запрещает прохождение импульсов с
элемента DD7.2, разрешающий тактового генератора на элемент DD6.2 и
прохождение сигнала через DD6.1. формирует на выходе элемента DD6.3
Первый же отрицательный импульс с уровень 1. Излучатель оптопары VU1
выхода тактового генератора формирует выключается, вызывая выключение
на выходе элемента DD6.1 уровень 0, тиристора VS1 и нагрузки. Устройство
который вызывает появление уровня 0 на возвращается в исходное состояние.
выходе элемента DD6.3. Выходной ток Тактовую частоту генератора
этого элемента включает излучатель выбирают в зависимости от конкретного
оптопары VU1, а последний — применения устройства изменением
фототиристор оптопары. В свою очередь емкости конденсатора C1. В
фототиристор открывает тиристор VS1, определенных пределах частота
подстраивается резистором R1.
ЭЛЕКТРОННЫЙ ТАЙМЕР-СЕКУНДОМЕР
66
преобразующий цифровые коды в Если при этом не нажата ни одна кнопка
визуальное отображение десятичных SB1 — SB10, т.е. на всех
знаков и управляющий подачей информационных входах мультиплексора
звукового сигнала; узел управления отсутствуют уровни 0, то на его выходе
режимом на элементах DD7—DD9. установлен уровень 0, который поступает
В связи со сложностью схемы работу на D-вход триггера DD4.1 и по каждому
устройства рассмотрим поэтапно. При тактовому сигналу, поступающему на С-
включении питания устройства начинает вход, записывается в него. Таким
работать тактовый генератор узла образом, если все кнопки отжаты, то на
клавиатуры (DD1). выходах счетчика DD2 идет смена
Генератор интервалов времени комбинаций кодов, а триггер DD4.1
(DD7.1 — DD7.3, DD17.1) заторможен находится в нулевом состоянии.
уровнем 0 на входе элемента DD7.3, Теперь разберем конкретный пример
поступающим с выхода элемента DD8.3, подготовки таймера для отсчета
образующего совместно с элементом интервала времени 9237 с.
DD8.4 RS-триггер. При нажатии кнопки SB9,
Генератор тонального сигнала соответствующей цифре 9, уровень 1
заторможен уровнем 0, поступающим на появляется на выходе мультиплексора в
вход элемента DD16.3 с выхода Q момент опроса входа, к которому
триггера DD4.2, установленного в подключена данная кнопка. Это момент
нулевое состояние импульсом заряда появления на выходе счетчика DD2
конденсатора С3. двоичного кода 1001 после очередного
Импульсом заряда конденсатора С2 перехода напряжения тактового
триггеры DD5.1, DD5.2 и счетчики DD12 импульса с уровня 1 к уровню 0.
— DD15 устанавливаются в нулевое Уровень 1 с выхода мультиплексора
состояние и на индикаторах поступает на информационный вход
высвечивается число 0000. триггера DD4.1 и записывается в него по
Время работы таймера заносится заднему фронту (моменту перехода
поразрядно, начиная со старшего разряда напряжения тактового импульса с уровня
(счетчик DD15), причем выбор 0 на уровень 1) этого же тактового
очередного разряда осуществляется импульса. На выходе Q триггера
автоматически узлом управления появляется уровень 0, который запрещает
записью (см. рис. 41, а). прохождение тактовых импульсов с
Происходит это следующим образом. выхода генератора на вход счетчика.
Импульсы, поступающие с тактового Таким образом, на выходе счетчика будет
генератора на вход счетчика опроса зафиксирован код 1001,
клавиатуры DD2, вызывают появление на соответствующий десятичной цифре 9.
его выходе четырехразрядных двоичных Счетчик будет оставаться в этом
кодов, которые во времени проходят все состоянии до тех пор, пока не будет
возможные комбинации от 0000 до 1001. отпущена кнопка SB 10. При этом на
Эти коды поступают на входы выходе мультиплексора появляется
управления мультиплексором DD3 и уровень 0, который по первому же
«подключают» к его выходу один из заднему фронту импульса, поступающего
входов (0 — 9), десятичный код которого с элемента DD7.4, будет записан в
соответствует присутствующему на триггер. Он установится в нулевое
управляющих входах двоичному коду. состояние. Уровень 1 с выхода Q
триггера разрешает прохождение только разрешает работу счетчика опроса
импульсов с генератора на тактовый вход клавиатуры, но и переводит триггер
счетчика. Опрос клавиатуры DD5.1 в единичное состояние. Тем
возобновится и будет продолжаться до самым устанавливается уровень 0 на
нажатия следующей кнопки. выходе D1 дешифратора DD6, сигнал с
В момент остановки счетчика DD2 его которого, инвертируясь элементом
выходной код поступает одновременно и DD10.3, подготавливает элемент DD11.3
на одноименные входы счетчиков DD12 к формированию импульса записи
— DD15 счетного узла (рис. 41, б). В это параллельного кода в счетчик DD14.
же время положительный перепад При нажатии следующей кнопки (в
напряжения с выхода Q триггера DD4.1 нашем случае SB3 — соответствующей
поступает на входы элементов DD11.1 — десятичной цифре 2) на выходе счетчика
DD11.4. Уровень 1 при этом опроса клавиатуры DD2 формируется код
присутствует только на втором входе 0010, который поступает на входы
элемента DD11.4. Это связано с тем, что счетчиков DD12 — DD15.
после начальной установки по Положительный перепад напряжения с
включению питания на выходах Q выхода Q триггера DD4.1 формирует при
триггеров DD5.1, DD5.2, на которых этом на выходе элемента DD11.3 сигнал
организован двухразрядный двоичный записи указанного кода в счетчик DD14,
счетчик, присутствуют уровни 0, после чего на цифровых индикаторах
поступающие на вход дешифратора DD6. будет высвечено число 9200.
Поэтому на выходе D0 этого Таким образом, после нажатия
дешифратора присутствует уровень 0, четырех необходимых кнопок на
который инвертируется элементом цифровых индикаторах высветится число
DD10.4. С выхода этого элемента 9237, соответствующее времени работы
уровень 1 поступает на вход элемента таймера.
DD11.4. После установки времени работы
При поступлении на входы элементов таймера нажимается кнопка SB11
DD11.1 — DD11.4 положительного «Пуск». При этом на выходе элемента
перепада напряжения с выхода Q DD8.3 RS-триггера устанавливается
триггера DD4.1 отрицательный перепад уровень 1, разрешающий работу
напряжения формируется только на генератора временных интервалов на
выходе элемента DD11.4. Этот сигнал элементах DD7.1 — DD7.3. Частота
поступает на вход разрешения записи работы этого генератора определяется
параллельной информации счетчика выбором одного из времязадающих
DD15, и по его фронту происходит резисторов R9 или R10. Выбор
запись в счетчик кода, имеющегося в необходимого резистора осуществляется
данный момент времени на выходе установкой уровня 0 на выходе
счетчика опроса клавиатуры DD2, т.е. соответствующего элемента (DD8.1 или
кода 1001. Остальные счетчики остаются DD8.2), что авто магически происходит
в нулевом состоянии, а на цифровых при выборе режима работы устройства
индикаторах высветится десятичное переключателем SA1.
число 9000. Если устройство используется как
Положительный перепад напряжения, таймер (переключатель находится в
формирующийся на выходе Q триггера положении, показанном на схеме), то
DD4.1 после отпускания кнопки SB9, не включен резистор R10,
устанавливающий режим работы поступает через диод VD4 на вход
генератора временных интервалов с элемента DD8.4 RS-триггера и тактовый
частотой 1 Гц. Одновременно этот же вход D-триггера DD4.2, включенного в
переключатель разрешает прохождение режиме T-триггера. Передний фронт
импульсов с выхода этого генератора на этого импульса устанавливает на выходе
вычитающий (–1) вход счетчика DD12. элемента DD8.3 уровень 0, запрещающий
Таким образом, по каждому работу генератора временных
положительному перепаду напряжения интервалов. Задний фронт этого
на выходе элемента DD17.1 состояние импульса переводит триггер DD4.2 в
счетчика DD12 будет изменяться, причем единичное состояние, разрешая тем
записанное в нем число будет самым работу тонального генератора.
уменьшаться на 1. На цифровых Таким образом, через 9237 с после
индикаторах будет наблюдаться нажатия кнопки SB11 «Пуск» таймер
уменьшение записанного числа, т.е. 9236, выдаст звуковой сигнал, и отсчет
9235, 9234 и т.д. времени прекратится. Звуковой сигнал
В момент перехода счетчика DD12 из таймера может быть выключен только
состояния 0000 (десятичная цифра 0) в нажатием кнопки SB14. При этом триггер
состояние 1001 (десятичная цифра 9) на DD4.2 устанавливается в нулевое
выходе <0 этого счетчика формируется состояние и запрещает работу тонального
отрицательный импульс . Задний фронт генератора.
его (момент перехода напряжения с При использовании устройства в
низкого уровня на высокий), поступая на режиме секундомера (переключатель SA1
вычитающий (–1) вход счетчика DD13, устанавливается в нижнее, по схеме,
переводит последний в состояние 0010 положение) к генератору временных
(десятичная цифра 2), или, иначе говоря, интервалов подключается резистор R9,
вычитает из него единицу. Таким обусловливающий частоту генерации 10
образом, после показаний цифрового Гц, что соответствует дискретности
индикатора 9230, по приходу следующих отсчета в 0,1 с. Одновременно
импульсов с генератора временных разрешается прохождение импульсов с
интервалов на вычитающий вход выхода генератора временных
счетчика DD12, на нем будут интервалов только на суммирующий
высвечиваться числа 9229, 9228 и т.д. вход счетчика DD12, и на цифровом
Аналогично происходит уменьшение индикаторе HG2 загорается сегмент h
кодов, записанных в счетчиках DD14 и (децимальная точка), получающий
DD15. питание через резистор R3. В то же время
Через 9236 с счетчики будут уровень 0, поступающий на вход D
находиться в нулевых состояниях, т. е. на дешифратора DD6, вызывает появление
индикаторах будет высвечиваться 0000. на его выходах D0 — D3
По окончании 9237-й с счетчик DD12
переходит в состояние 1001 при этом на
его выходе <0 формируется импульс,
переводящий счетчик DD13 в состояние
1001, который, в свою очередь,
переводит в такое же состояние счетчик
DD14, а он — DD15. Отрицательный
импульс с выхода <0 счетчика DD15
уровней 1, запрещающих запись единицу. Таким образом, по каждому
информации в счетчики при случайном импульсу, поступающему с выхода
нажатии кнопок SB1—SB10. После этого генератора временных интервалов на
при необходимости производится суммирующий вход счетчика DD12,
обнуление счетчиков нажатием кнопки показания цифровых индикаторов будут
SB13 «Сброс». увеличиваться на единицу, отображая с
Пуск секундомера осуществляется дискретностью 0,1 с время, прошедшее с
нажатием кнопки SB11 «Пуск». момента нажатия кнопки «Пуск».
Импульсы с частотой следования 0,1 Гц При изготовлении устройства учтите,
поступают с выхода генератора что управлять им можно и дистанционно,
временных интервалов на суммирующий подключив параллельно контактам
вход счетчика DD12. При переходе этого соответствующих кнопок нормально
счетчика из состояния 1001 (десятичное разомкнутые контакты кнопок пульта
число 9) в состояние 0000 (десятичное дистанционного управления. Можно
число 0) на его выходе > 9 формируется управлять им и цифровыми сигналами
импульс, поступающий на суммирующий соответствующих уровней, подавая их в
вход счетчика DD13. Этот импульс точки подключения контактов кнопок к
увеличивает код состояния счетчика на входам цифровых элементов схемы.
РЕГИСТРЫ
а б в г
«БЕГУЩИЕ» ОГНИ
СОЛО НА ПЗУ
МУЗЫКАЛЬНАЯ ШКАТУЛКА
ПРОГРАММИРУЕМАЯ К155РЕЗ
ПОСЛУШНЫЙ КИЛОБИТ
б
на элементах DD9—DD11; узел напряжение + 12,5 В. Через 3 мс по
управления генератором заднему фронту выходного импульса
программирующего тока на элементах этого одновибратора запускается
DD3, DD4, DD14 и генератор одновибратор нормирования
программирующего тока на транзисторах длительности времени
VT2—VT4. программирования (DD4.1, D4.2). На его
Последовательность работы с этим выходе появляется отрицательный
программатором такая же, как и с импульс длительностью 50 мс, который,
описанным ранее. Поэтому остановимся инвертируясь элементом DD4.3,
только на различиях в самой работе. На разрешает прохождение управляющих
первом этапе работы с программатором, импульсов с частотой 40 кГц на вход
как и в предыдущем случае, проверьте генератора программирующего тока на
интегральную схему на «чистоту». Затем транзисторах VT2—VT4. Таким образом,
счетчики адреса программируемого слова за время действия нормирующего
установите в нулевое состояние для импульса на базу транзистора поступает
записи информации в слово по адресу 1000 импульсов. Соответственно на
0000 0000. Переключателями SA1 — SA4 программируемый вход интегральной
установите код слова, записываемого по схемы поступит 1000 токовых
текущему адресу (SA1 — старший разряд, импульсов, которые пережигают
SA4 — младший). После набора кода нихромовую перемычку.
слова нажмите кнопку SB1 Через 200 мс на выходе тактового
«Программирование», в результате генератора появляется отрицательный
счетчик разрядов программируемого перепад напряжения, который отключает
слова устанавливается в состояние 0000, повышенное напряжение от
в связи с чем на выходе Е1 дешифратора программируемой интегральной схемы и
DD6 появляется уровень 1, разрешая переводит счетчик разрядов
прохождение тактовых импульсов с программируемого слова в следующее
генератора. По переднему фронту состояние. Затем, через 300 мс,
тактового импульса счетчик разрядов положительный перепад напряжения на
программируемого слова переходит в выходе тактового генератора вновь
состояние 001. При этом уровень 0 на включает режим программирования и
выходе D1 дешифратора DD6, цикл записи повторяется для следующего
инвертируясь элементом DD7.1 включает разряда. В остальном работа данной
(если разомкнуты контакты кнопки SA1) схемы аналогична описанной ранее.
реле К2, которое своими контактами К2.1 Для питания этого программатора
отключает вывод 9 программируемой необходим источник стабилизированного
интегральной схемы от источника + 5 В и напряжения постоянного тока 5 В,
подключает его к источнику + 12,5 В. По обеспечивающий в нагрузке ток до 1 А, и
заднему фронту этого тактового источник напряжения постоянного тока
импульса включается реле К1 и 12,5 В, обеспечивающий в нагрузке ток
запускается одновибратор задержки не менее 750 мА.
включения программирующего тока. Это
сделано для того, чтобы успело надежно
сработать реле К1, которое своими
контактами К1.1 подает на
программируемую интегральную схему
ЧАСТЬ II. МИКРОЭВМ СВОИМИ РУКАМИ
ИСТОЧНИКИ ПИТАНИЯ
5. Коды МОНИТОРа
Клавиатура имеет двойное шестнадцатеричные клавиши
функциональное назначение. После используются для ввода ее параметров.
начальной установки каждая клавиша Директивы МОНИТОРа перечислены в
служит для ввода директивы, а после табл. 6.
ввода директивы эти же
6. Директивы МОНИТОРа
Клавиша Параметры Назначение
директивы директивы
0 АДР Запись данных в ОЗУ с адреса АДР
1 – Запись данных в ОЗУ с адреса C000H
2 – Чтение данных из ОЗУ с адреса C000H
3 – Тест индикации
4 – Тест ОЗУ
5 АДР Чтение данных из ОЗУ с адреса АДР
6 – Пуск программы с адреса C000H
7 АДР Пуск программы с адреса АДР
8 АДР1, АДР2 Контрольная сумма данных с АДР1 по АДР2
9 АДР1, АДР2 Запись данных на ленту с АДР1 по АДР2
А АДР Чтение данных с ленты со смещением, равным АДР
B – Индикация времени
C АДР Установка времени с АДР C3FDH секунды,C3FEH минуты, C3FFH часы
Все директивы МОНИТОРа задаются относятся к первой основной части
шестнадцатеричными цифрами и могут МОНИТОРа 0000—01FH. Вторая,
содержать дополнительно до трех вспомогательная часть МОНИТОРа
параметров. Параметры также вводятся в содержит набор программ, обращение к
виде шестнадцатеричных чисел. Их которым производится с помощью
набирают после ввода директивы и директивы «7». В минимальном объеме
контролируют по индикации на дисплее. МОНИТОР может быть размещен в
Поскольку в МОНИТОРе на крайний одной микросхеме КР556РТ5.
справа индикатор выводится информация Знакомство с директивами
аккумулятора (адрес индикатора 9000H), МОНИТОРа начнем с директив работы с
а на два других индикатора — памятью. Директива «4» позволяет
информация из регистровой пары HL тестировать ОЗУ микроЭВМ. После
(адреса 9001Н, 9002Н), то в дальнейшем нажатия клавиши «4» на индикаторах HL
мы эти индикаторы так и будем появляется код «С400Н», что означает:
называть: индикатор А, индикаторы HL. вся область ОЗУ от C000H
Структурно МОНИТОР состоит из
двух частей по 512 байт каждая.
Перечисленные в таблице директивы
до C3FFH исправна. Тестирование ОЗУ уже на индикаторе HL. На индикаторе А
производится последовательной записью высвечивается «00». После этого
в каждую ячейку сначала нулей и их вводится новая информация в эти и
чтением с проверкой на ноль, а затем последующие ячейки памяти.
записью единиц с последующей Директива «5» позволяет
проверкой качества записи. Если какая-то просматривать ячейки памяти ОЗУ с
ячейка памяти неисправна, то ее адрес любого адреса. После нажатия кнопки
выводится на индикатор HL. «5» вводится адрес интересующей
Пользоваться этой директивой нужно ячейки, который сначала индицируется
осторожно, так как после прохождения побайтно на индикаторе А, а затем
теста ОЗУ все его ячейки заполнятся выводится на индикаторы HL. На
единичками. индикаторе А будет написано
Директива «1» позволяет содержимое ячейки памяти. Следующие
осуществлять запись данных в ОЗУ с ячейки просматриваются нажатием на
адреса C000H. После нажатия на кнопку любую кнопку.
«1» на индикаторах HL появляется код Особое положение среди директив
«С000», а на индикаторе А — «00». работы с памятью занимает директива
Последующее нажатие на кнопки «Шаг назад». Она отсутствует в таблице
приводит к занесению данных в ячейки 6. Дело в том, что все кнопки в
ОЗУ. Вводимые данные отображаются на микроЭВМ, кроме кнопки «Шаг назад»,
индикаторе А, а на индикаторах HL имеют двойное функциональное
выводятся адреса загружаемых ячеек значение. После сброса каждая кнопка
памяти. Переход от ячейки к ячейке служит для ввода директив МОНИТОРа,
происходит автоматически, с задержкой а при исполнении директив это кнопки
на 1 с. Так, если после ввода директивы шестнадцатеричных цифр. Директива
«1» оставить нажатой эту кнопку, то, «Шаг назад» имеет отдельную кнопку и
начиная с ячейки памяти с адресом может быть введена при исполнении
C000H, во все последующие ячейки перечисленных выше директив работы с
будут записываться единицы. памятью.
Директива «2» предназначена для Предположим, выполняется
просмотра содержимого ячеек памяти, директива чтения памяти. На
начиная с адреса C000H. После ввода индикаторах HL — адрес «С003», а на
директивы на индикаторах HL индикаторе А — содержимое этой
появляется адрес «С000», а на ячейки— «22». После нажатия на кнопку
индикаторе А — содержимое ячеек «Шаг назад» на индикаторе А
памяти C000H. Нажав на любую кнопку, появляются нули и можно вводить новые
вы перейдете в режим автоматического данные в ячейку с адресом С003Н и
перелистывания ячеек памяти. последующие адреса. Аналогично
Директива «0» аналогична директиве применяется директива «Шаг назад» при
«1», однако отличается от нее тем, что выполнении других директив работы с
после нажатия кнопки «0» необходимо памятью.
ввести параметр — адрес, начиная с При работе с памятью полезной
которого будет осуществляться запись может оказаться директива вычисления
данных в ОЗУ. Адрес ячейки памяти при контрольной суммы. Чтобы получить ее,
этом индицируется на индикаторе А, а необходимо нажать
затем, после ввода адреса, появляется
на кнопку «8», а затем ввести два которых она была записана. Если запись
параметра — начальный и конечный считана верно, то на индикаторах HL
адрес области памяти, в которой выводится контрольная сумма, которая
находится контрольная сумма. Так, индицировалась при записи. Итак, чтение
можно проверить ПЗУ, если задать записи с магнитофона начинают
начальный и конечный адрес нажатием кнопки «А» и вводом
МОНИТОРа. Контрольная сумма смещения. Перед вводом последнего
выводится на индикаторы HL и для полубайта смещения магнитофон
МОНИТОРа составляет 0181Н (0000Н— включается на воспроизведение, и с
01FFH) и 18ССН (0200Н—03FFH). началом записи (однотонное звучание)
Теперь рассмотрим директивы вводится последний полубайт смещения.
ввода/вывода информации при работе с Считывание записи завершается
кассетным магнитофоном. Желательно, индикацией контрольной суммы данных,
чтобы магнитофон имел счетчик ленты, введенных в ОЗУ.
по которому можно было бы найти Директив запуска программ две. С
начало записи. Идентифицировать же помощью директивы «6» осуществляется
запись можно по выводимой при записи запуск программы с адреса C000H, а с
и чтении на индикатор HL контрольной помощью директивы «7» программа
суммы информации. Это своего рода может быть запущена с адреса, который
паспорт записи. вводится как параметр директивы. Нажав
При записи данных на ленту кнопку «7», набирают адрес пуска
нажимают кнопку «9», а затем вводят два программы, контролируя ввод побайтно
параметра — начальный и конечный на индикаторе А. При правильном вводе
адрес данных. После набора директивы адрес пуска выводится на индикатор HL.
перед вводом младшего байта конечного Затем можно вводить параметры
адреса включают на запись магнитофон и запущенной программы. Пользуясь
лишь затем вводят последний байт директивой «7», можно применять
адреса. После этого начинается запись вспомогательные подпрограммы,
информации на ленту. Скорость записи входящие во вторую половину
фиксированная— 1500 бит/с. При МОНИТОРа от 0200Н. до 03FFH.
выполнении этой директивы на ленту С адреса 0200Н запускается
последовательно записываются 256 байт программа копирования данных. Ее
00, Е6 (байт синхронизации), младший параметрами являются начальный и
байт начального адреса, старший байт конечный адреса исходной программы, а
начального адреса, младший байт также начальный адрес копии.
конечного адреса и старший байт Копирование с помощью этой
конечного адреса. Завершение программы производится как вверх, так и
выполнения директивы индицируется вниз относительно исходной программы
появлением на индикаторе HL и даже на перекрывающиеся области
контрольной суммы. программ с затиранием исходной
Чтение данных с магнитной ленты в программы в этих областях.
ОЗУ производится по директиве «А». Предположим, вам необходимо
Директива имеет один параметр — скопировать МОНИТОР с адреса 0100Н
смещение. Если смещение равно 0000, то до 0120Н в новые адреса ОЗУ с С100Н до
программа считывается в адреса, из С120Н. В этом случае
должна соблюдаться следующая запускаемый с адреса 02Е5Н. Параметры
последовательность нажатия клавиш: суперкорректора: начальный и конечный
7 0200 0120 С100 адреса рабочей программы. Пример с
Копирование завершается с МОНИТОРОМ — рабочая программа
появлением двух единичек на подготавливается для работы в F100H —
индикаторе А. Это значит, что F120H:
МОНИТОР ожидает ввода следующей 7 02Е5 С120 F100
директивы. Завершается работа программы
Проверить копирование данных появлением единичек на индикаторе А.
можно с помощью другой При отладке программ может возникать
вспомогательной программы сравнения необходимость вставки или удаления
данных двух областей. Ее пусковой адрес отдельных байтов. Для этого можно
03В2Н. У этой программы три использовать несколько программ.
параметра: начальный и конечный адреса Программа вставки байта —
исходной программы и начальный адрес пусковой адрес 035ЕН. Параметры
копии. В продолжение примера с программы: адрес того места программы,
копированием МОНИТОРа приведем где необходимо вставить байт, и адрес
последовательность нажатия на клавиши: конца программы. Программа удаления
7 03B2 0100 С100 байта — пусковой адрес 0388Н.
При совпадении исходной программы Параметры программы: адрес удаляемого
и копии на всех индикаторах появляются байта и адрес конца программы.
единички. При несовпадении эталона и Программа завершается просмотром
копии высвечивается адрес с ошибкой оставшейся части программы после
копии. При этом возможно исправление адреса удаленного байта.
ошибки и последующее сравнение Программа замены адресов —
данных. Чтобы скопированная пусковой адрес 0309Н. После пуска
программа могла быть запущена в новых программы вводятся начальный и
адресах, ее нужно скорректировать с конечный адреса рабочей программы, а
помощью вспомогательной программы- затем старый и новый адреса.
корректора. Ее пусковой адрес 025FH. У Завершается исполнение программы
программы три параметра: начальный и выходом в МОНИТОР и появлением
конечный адреса исходной pa6очей единичек на индикаторе А.
программы и начальный адрес Завершим описание вспомогательных
корректируемой программы. Для нашего программ МОНИТОРа программой
примера с МОНИТОРОМ это будет индикации регистров микропроцессора.
выглядеть так: Эта программа может использоваться
7 025F 0100 С100 при отладке, для чего в отлаживаемую
Завершается работа программы программу с помощью программы
появлением единичек на индикаторе А. вставки байта производится вставка трех
Если скорректированная программа байт CD DD03. После пуска в требуемом
будет использоваться на другом месте отлаживаемой программы
компьютере, например «MИKPO-80», в происходит остановка, а на индикаторах
адресном пространстве, которое отображается содержимое регистров HL
отсутствует в микроЭВМ минимальной и ячейки памяти с адресом HL. При
конфигурации, то для ее подготовки нажатии на любую клавишу
используется суперкорректор, индицируется содержимое остальных
регистров. Выводится оно на индикатор нашей микроЭВМ такими сигналами являются
импульсы, поступающие каждую секунду от
А в следующей последовательности: AF,
датчика времени, который выполнен на микросхеме
ВС, DE. Затем происходит исполнение К176ИЕ5, состоящей из генератора импульсов
программы. частотой 32768 Гц и делителя с коэффициентом
При нажатии кнопки «3» запускается деления 215.
В процессе обработки прерывания, запрос на
директива тестирования дисплея
которое уже, предположим, поступил от датчика
микроЭВМ. После пуска директивы на секунд, можно выделить следующие этапы
всех индикаторах дисплея выводятся обработки прерывания.
последовательно все шестнадцатеричные 1. Вывод 14 микропроцессора КР580ВМ80А
перешел в состояние логической 1, что означает
цифры от 0 до F.
наличие запроса на прерывание.
Как уже отмечалось, в МОНИТОР 2. Микропроцессор принял запрос на
встроена программа часов, работающая в прерывание, и на его выводе 16 установился
режиме прерывания, что позволяет уровень логического нуля.
Когда на выводе 16 устанавливается
привязывать программы к реальному
логический нуль, микропроцессор игнорирует все
времени. запросы на прерывания, поступающие на его вход.
Теперь сделаем краткое отступление и В системе команд микропроцессора есть две
расскажем, что такое прерывание в микроЭВМ. Все специальные команды: запрета прерываний DI и
команды микропроцессор выполняет в том порядке, разрешения прерываний EI. С помощью этих
в котором они расположены в памяти. Это значит, команд можно менять состояние вывода 16
что никакое вмешательство пользователя не может микропроцессора. После сброса микропроцессора в
оказать воздействие на ход выполнения программы, начальное состояние вывод 16 переводится в
по которой уже начал работать микропроцессор состояние логического нуля. Это означает, что
(кроме, конечно, сброса микроЭВМ в начальное после начальной установки микропроцессор
положение). Система прерывания позволяет игнорирует все запросы на прерывания.
изменять ход выполнения программы на основании Единственный способ разрешить прерывание —
сигналов, поступающих в микропроцессор. После заставить микропроцессор выполнить команду EI.
поступления прерывания выполнение основной После выполнения этой команды на выводе 16
программы прекращается и управление передается появляется логическая 1. Именно поэтому после
другой программе. Как только работа по другой начальной остановки одной из первых в
программе завершится, будет осуществлен переход МОНИТОРе выполняется команда EI,
к прерванной программе и продолжится ее разрешающая прерывание.
нормальное выполнение. Сигнал прерывания,
поступающий в микропроцессор, асинхронный. В
После этого первый же секундный импульс 2. Подпрограмма ввода байга с
установит уровень логического 0 на выводе 16 и
клавиатуры — обращение с помощью
микропроцессор не будет воспринимать запросы на
прерывание. В тот же момент из слова состояния команды RST2 (код D7). После возврата
формируется управляющий сигнал «Подтверждение из подпрограммы код клавиатуры
прерывания» — ППР. Однако поскольку ни одно находится в регистре А
устройство ввода/вывода и памяти не активировано
микропроцессора.
этим сигналом, то на шине данных будет
действовать код команды FFH (команды RST7), 3. Подпрограмма задержки на
который и определит адрес перехода 0038Н секунду — обращение с помощью
(подпрограмма прерывания)— программу часов. В команды RST3 (код DF).
нашей микроЭВМ организовано лишь
4. Подпрограмма чтения клавиатуры
одноуровневое прерывание по команде RST7.
Итак, по адресу 0038Н осуществляется переход (проверка активности клавиатуры)—
на подпрограмму часов, в которой программно обращение через RST4 (код Е7).
организованы счетчики секунд, минут и часов. 5. Подпрограмма индикации
Соответствующие им ячейки памяти имеют адреса
содержимого регистра HL и А на
C3FDH, C3FEH и C3FFH. Завершается программа
часов командой EI, и на выводе 16 индикаторах дисплея микроЭВМ —
микропроцессора снова устанавливается логическая обращение через команду RST5 (код EF).
1. Прерванная программа продолжает работу. 6. Подпрограмма ввода двух байтов с
клавиатуры в регистр DE — обращение
В МОНИТОРе имеется директива через команду RST6 (код F7).
начальной установки времени. После 7. Подпрограммы сравнения адресов,
нажатия кнопки «С» прерывания хранимых в регистровых парах DE и
запрещаются. Затем следует набрать ВС,— пусковой адрес 0194Н и в
адрес ячейки памяти C3FDH и регистровых парах HL и DE —пусковой
последовательно ввести значение секунд, адрес 0259Н.
минут и часов. После этого по сигналам 8. Подпрограмма чтения байта с
точного времени надо нажать кнопку магнитофона — пусковой адрес 0128Н.
«Уст», пустив тем самым часы и После возврата из подпрограммы код
разрешив прерывания. считанного символа находится в регистре
Имеется в МОНИТОРе и директива А микропроцессора.
индикации времени, для чего достаточно Эти подпрограммы помогут вам
нажать кнопку «В». При этом на упростить разработку новых программ.
индикаторе HL выводятся часы и Заметим, что для унификации обмена
минуты, а на индикаторе А — секунды. программ с «МИКРО-80» подпрограммы
Точность хода часов определяется обслуживания кассетного магнитофона
стабильностью кварцевого генератора. (записи и чтения байта) идентичны тем,
В состав МОНИТОРа входят ряд что использованы в МОНИТОРе
подпрограмм ввода/вывода, которые «МИКРО-80».
могут быть использованы при Поясним применение приведенных выше
составлении программ. Перечислим эти подпрограмм на таком примере. Предположим, что
необходимо написать программу занесения
подпрограммы и правила обращения с констант в заданную область памяти. Входным
ними. параметром этой программы являются начальный и
1. Подпрограмма записи байта на конечный адреса области памяти, в которую
магнитофон, обращение с помощью заносится константа. Алгоритм этой программы
представлен в виде структурной схемы на рисунке
команды RST1 (код CF). Код выводимого 55.
символа должен храниться в регистре А.
программу в трех ракурсах: колонка адресов,
колонка объектных кодов, колонка меток и
мнемонических (ассемблерных) кодов, однозначно
определяющих работу программы на уровне
команд, и колонка комментариев. Подобная форма
записи программ позволяет не только понять работу
программы (колонка комментариев), но и
разобраться в структуре программы (колонка меток
и операций). Колонка кодов может быть
непосредственно введена в ОЗУ микроЭВМ. Такой
листинг изображен далее в виде таблицы 7.
Для ввода кодов программы следует
воспользоваться директивой «1». Затем проверить
ввод директивой «2» и, наконец, осуществить пуск
программы директивой «6». После нажатия кнопки
«6» необходимо ввести начальный и конечный
адрес ОЗУ, затем ввести константу. По окончании
работы программы на правом индикаторе
появляются единички.
Проверить результат, работы программы можно
с помощью директивы «5», просмотрев ту область
памяти, куда была занесена константа. Эту
Рис. 55. Алгоритм программы занесения программу можно затем сохранить для
константы. дальнейшего использования, записав ее на
магнитофонную ленту.
При написании программ удобно составить
Контрольная сумма программы 0800Н.
бланк (листинг), позволяющий представить
7. Листинг программы занесения константы в ОЗУ
Адреса Коды Метки Мнемоника Комментарий
С000Н F7 RST6 Ввод начального адреса в регистр DE
С001Н ЕВ XCHG Пересылка DE в HL
С002Н F7 RST6 Ввод конечного адреса в регистр DE
С003Н D7 RST2 Ввод константы в регистр А
С004Н 47 MOV В,А Пересылка константы из А в В
С005Н 70 М: MOV М,В Пересылка константы из В в ОЗУ
С006Н CD CALL 0259 Обращение к подпрограмме сравнения
С007Н 59 в HL и DE МОНИТОРа
С008Н 02
С009Н 23 INX Н Увеличение адреса на единицу HL = HL + 1
С00AН С2 JNZM Проверка условия; если условие не
С00BН 05 выполняется, то переход на метку М
С00CН С0
С00DH С7 RST0 Выход в МОНИТОР по адресу 0000Н
123
124
В результате нормализации в исходные адресам С375Н и С376Н, сумма
ячейки памяти записывается число, у размещается в ячейки ОЗУ С375Н и
которого 14-й разряд мантиссы равен С376Н. Пусковой адрес 08DDH.
нулю, а 13-й — единице. 3. Сложение трехбайтных чисел с
Пусковой адрес подпрограммы плавающей запятой. Первое слагаемое
092DH. заносится в ячейки С371Н, С372Н,
Вторая обслуживающая С373Н, второе — в ячейки С374Н,
подпрограмма производит относительное С375Н, С376Н, результат сложения
нормирование двух чисел. Это требуется, помещается в ячейки с адресами С374Н,
например, для сложения чисел в формате С375Н, С376Н. Пусковой адрес 0987Н.
с плавающей запятой, когда необходимо, Умножение чисел. 1. Умножение
чтобы числа имели равные порядки. двухбайтных чисел со знаком.
Подпрограмма извлекает из ячеек Сомножители находятся в памяти по
памяти С371Н, С372Н, С373Н первое адресам С372Н, С373Н и С375Н, С376Н.
число, а из ячеек памяти С374Н, С375Н, Произведение заносится в ячейки С375Н,
С376Н — второе и сравнивает их С376Н. Пусковой адрес 0994Н.
порядки по абсолютному значению. 2. Умножение трехбайтных чисел с
Больший порядок записывается вместо плавающей запятой. Сомножители
меньшего, а число с меньшим порядком заносятся в ячейки памяти С371Н, С372Н
сдвигается вправо без округления на и С373Н, а также С374Н, С375Н и
величину, равную разности этих С376Н. Произведение находится в
порядков. Пусковой адрес подпрограммы ячейках С374Н, С375Н и С376Н.
0877Н. Пусковой адрес 09ЕСН.
Третья обслуживающая Деление чисел. 1. Деление
подпрограмма предназначена для двухбайтных чисел с фиксированной
передачи трехбайтного числа из памяти в запятой. Делимое и делитель находятся в
регистры А—В—С. Начальный адрес памяти по адресам С375Н, С376Н,
трехбайтного числа должен находиться в С372Н, С373Н. Частное в ячейках С375Н
регистровой паре HL. Пусковой адрес и С376Н. Пусковой адрес 09F9H.
0А8СН. 2. Деление чисел с плавающей
Четвертая обслуживающая запятой. Делимое находится в адресах
подпрограмма пересылает из регистров С374Н, С375Н, С376Н, делитель — в
А—В—С три байта в ОЗУ по начальному адресах С374Н, С375Н, С376Н. Пусковой
адресу в регистровой паре HL. Пусковой адрес 0A6FH.
адрес 0А92Н. Показательная функция. Показатель
А теперь более подробно остановимся степени заносится в ячейку С364, а
на подпрограммах арифметических основание степени в ячейки памяти
операций. С371Н, С372Н, С373Н. Результат
Сложение чисел. 1. Сложение записывается в ячейки памяти С374Н,
однобайтных чисел со знаком. С375Н, С376Н. Пусковой адрес 0В08Н.
Слагаемые находятся по адресам С371Н
и С374Н, результат размещается в ячейке
ОЗУ С374Н. Пусковой адрес 0849Н.
2. Сложение двухбайтных чисел со
знаком. Слагаемые находятся по адресам
С372Н, С373Н (первое слагаемое) и по
125
Логарифмическая функция С363Н, а значение функции С365Н,
(натуральный логарифм). Аргумент С366Н, С367Н. Пусковой адрес 0D47H.
заносится в ячейки ОЗУ С361Н, С362Н, 7. Arccos х (–1<х<1). Аргумент
С363Н, а значение функции записывается заносится в ячейки ОЗУ С361Н, С362Н,
в ячейки ОЗУ С368Н, С369Н, С36АН. С363Н, а значение функции— С365Н,
Пусковой адрес 0В6ВН. С366Н, С367Н. Пусковой адрес 0Е40Н.
Тригонометрические функции. 1. 8. Arcctg х (0<х<1). Аргумент
Sin х (0<x<π/4). Аргумент заносится в заносится в ячейки ОЗУ С361Н, С362Н,
ячейки ОЗУ С361Н, С362Н, С363Н, а С363Н, а значение функции в ячейки
значение функции — С355Н, С366Н, ОЗУ С365Н, С366Н, С367Н. Пусковой
С367Н. Пусковой адрес 0С87Н. адрес 0F8FH.
2. Cos х (0<х<π/4). Аргумент Далее приведена распечатка кодов
заносится в ячейки ОЗУ С361Н, С362Н, библиотечки программ (табл. 9). Схема
С363Н, а значение функции— С365Н, подключения ПЗУ с библиотечкой
С366Н, С367Н. Пусковой адрес 0D32H. изображена на рисунке 61.
3. Tg х (0<х<π/4). Аргумент
заносится в ячейки ОЗУ С361Н, С362Н,
С363Н, а значение функции в ячейки
С374Н, С375Н, С376Н. -Пусковой адрес
0Е47Н.
4. Ctg х (0<х<π/4). Аргумент
заносится в ячейки ОЗУ С361Н, С362Н,
С363Н, а значение функции заносится по
адресам С374Н, С375Н, С376Н.
Пусковой адрес 0F61H.
5. Arctg х (0<х<1). Аргумент
заносится в ячейки ОЗУ С361Н, С362Н,
С363Н, а значение функции С365Н,
С366Н, С367Н. Пусковой адрес 0Е75Н.
6. Arcsin х (–1<х<1). Аргумент
Рис. 61. Схема подключения ПЗУ с библиотечкой.
заносится в ячейки ОЗУ С361Н, С362Н,
126
127
128
ГЛАВА 11. ОТ ИНДИКАТОРОВ — К ЭКРАНУ.
ДИСПЛЕЙНЫЙ МОДУЛЬ «ЮТ-88»
Пришло время сделать второй шаг и положением символа на экране
расширить конфигурацию нашего достигается синхронизацией импульсов
персонального компьютера — дополнить строчной и кадровой разверток.
его дисплейным модулем. Он позволит Вырабатываются они дисплейным
не только выводить информацию на модулем. Адресация ячеек памяти при
экран телевизора (дисплей), но и записи информации происходит от шины
подключить к компьютеру стандартную адреса микроЭВМ, а при чтении — от
клавиатуру, оснащенную буквами счетчиков, тактируемых
русского и латинского алфавитов, синхроимпульсами дисплейного модуля.
цифрами, математическими и другими Переключение адресных выводов ОЗУ
символами. производится с помощью коммутатора.
В первом модуле «ЮТ-88» дисплей ОЗУ страницы выполнено на
был 6-разрядным на светодиодных микросхемах КР541РУ2, а ПЗУ
индикаторах. Каждый символ в нем знакогенератора на микросхеме
складывался из комбинации семи К573РФ2. В дисплейном модуле имеется
светящихся сегментов. Теперь, специальный разряд ОЗУ, который
подключив дисплейный модуль, вы используется для хранения информации о
сможете выводить на экран и записывать текущем положении очередного символа
в специальное экранное ОЗУ целую — курсора. Эта одноразрядная
страницу текста объемом 28 строк по 64 информация размещается в адресном
символа. Начертание каждого символа пространстве всей страницы, занимая
формируется специальным около 2000 ячеек памяти. При
дешифратором на стандартной матрице считывании информации из ОЗУ
размером 5 x 7 точек. страницы одновременно считывается она
Принцип работы дисплейного модуля и из ячеек курсора. Наличие единицы в
тот же, что и у предыдущего. Но теперь ячейке курсора приводит к инверсии
положение каждого символа на экране высвечиваемого на экране телевизора
записывается в определенную ячейку символа — фон становится светлым, а
экранного ОЗУ. контуры символа темными.
ОЗУ страницы располагается в Наш дисплейный модуль позволяет
адресном пространстве от Е000 до EFFF. организовать не только постраничный
Адрес Е000 соответствует верхнему вывод информации, но и так называемый
крайнему слева знакоместу, a EFFF— «ролик», когда информация бежит на
нижнему крайнему справа. экране непрерывным потоком.
Соответствие между адресами ячеек и
130
Рис. 62. Схема дисплейного модуля.
131
132
адресом в знакогенераторе и снимается с DD18.1 и DD20.3 формируется кадровый
ячеек памяти страницы. Считанный синхроимпульс длительностью 1250 мкс
параллельный код записывается в с периодом повторения 20160 мкс.
регистр DD11, а затем преобразуется в Узел на элементах микросхем DD21.2,
последовательный. Импульсы, DD22.3, DD22.4 формирует сигнал
управляющие параллельной / запрета отображения, поступающий на
последовательной работой регистра, вход СЕ микросхемы ПЗУ
формируются в микросхемах DD12 знакогенератора и отключающий ее
(делитель на шесть), DD17 и DD20.2. На выходы при высоком уровне сигнала.
выходе логического элемента «2И-НЕ» Благодаря этому на входах регистра
DD17 формируются импульсы, период сдвига в узле формирования
следования которых определяет видеосигнала также устанавливается
длительность одного знакоместа в строке высокий уровень, что соответствует
экрана. гашению изображения. Синхроимпульсы
Счетчик знакомест в строке построен строк и кадров смешиваются в элементе
на микросхемах DD13 и DD14. В каждой DD9.3 и после смешивания с
строке может быть отображено 64 видеосигналами в транзисторе VT1
символа, причем отображение первого из подаются на модулятор или на вход
них начинается спустя 8 знакомест после «ВИДЕО» телевизора.
окончания строчного синхроимпульса. Коммутатор адресов ОЗУ страницы и
Шесть младших разрядов адреса ОЗУ курсора выполнен на мультиплексорах
страницы, осуществляющих привязку DD2—DD4. Управление коммутатором
символов к строке, получаются осуществляется сигналом выборки
вычитанием числа 8 из выходного кода адресного пространства низкого уровня
счетчика знакомест. Вычитание Е000—EFFF, поступающим на вывод 1
выполняется микросхемой DD15 типа мультиплексоров.
К155ИМЗ. Через шинные формирователи DD28,
На выводе 12 счетчика DD14 DD29 и мультиплексоры DD2—DD4 ОЗУ
формируется строчный синхроимпульс страницы и курсора подключается к
длительностью 4,5 мкс с периодом шине данных и адреса микропроцессора.
повторения 63 мкс. Строчный гасящий Это происходит при обращении к ним
синхроимпульс поступает с выхода микропроцессора. Если при наличии
старшего разряда микросхемы DD15. сигнала выборки адресов Е000—EFFF
Счетчик DD24 формирует восемь строк будет активен сигнал управления ЗПЗУ,
по горизонтали, которые отводятся под то произойдет запись кода с шины
одно знакоместо по вертикали. С выхода данных в ОЗУ страницы, а если будет
этого счетчика импульсы подаются на активен сигнал ЧТЗУ, то информация из
адресацию трех младших разрядов ПЗУ ОЗУ страницы и курсора поступит на
знакогенератора. шину данных.
Счетчик DD16 и один триггер
микросхемы DD12 образуют счетчик
строк с коэффициентом пересчета 327. С
выхода этого счетчика импульсы
подаются на адресацию ОЗУ страницы и
курсора (старшие пять разрядов),
осуществляя привязку символов по
вертикали. На логических элементах
133
Рис. 63. Электрическая схема клавиатуры.
134
В состав дисплейного модуля входит С на ввод информации.
и полная клавиатура, которая формирует Как видно из схемы на рисунке 63,
все необходимые символы. Реализована клавиатура представляет собой матрицу
она на программном уровне. В ней нормально разомкнутых контактов.
используется микросхема ДД19 — Замыкаются они при нажатии на
программируемый периферийный клавиши. Диоды VD1 — VD8 служат для
адаптер (ППА) КР580ВВ55. Обмен защиты канала A от повреждения при
информацией, засылка в ППА одновременном нажатии на несколько
управляющих слов, вырабатываемых клавиш. Специальная программа
монитором, и передача в микропроцессор осуществляет формирование нулевого
сведений о состоянии клавиатуры уровня на каждом выходе канала А. Если
происходит по шине данных. Низкий не нажата ни одна из клавиш, то на всех
уровень сигнала на управляющем входе разрядах канала B будут записаны
CS (вывод 6) разрешает обмен единички. При нажатии какой-нибудь
информацией между ППА и клавиши нулевой уровень с
микропроцессором. В состав ППА входят соответствующего канала А попадает на
три порта — А, В, и С. Их один из входов канала В. МОНИТОР
функциональное назначение определяет, какая клавиша нажата, и
определяется кодом управляющего слова, соответствующий ей 7-разрядный код
которое загружается микропроцессором в записывается в аккумулятор
регистр управляющего слова (РУС). микропроцессора. Сократить число
Сигналы на адресных входах А0 и А1 клавиш удается, используя клавиши
производят селекцию одного из трех модификации кода РУС, УС и СС. При
портов или регистра управляющего нажатии на клавишу РУС формируются
слова. Для работы клавиатуры ППА коды русского алфавита, клавиша УС
настроен на режим ввода/вывода (код позволяет формировать управляющие и
управляющего слова 8ВН). В этом случае графические символы, а клавиша
канал А работает на вывод, а каналы В и
135
СС служит для формирования кодов дисплей и клавиатуру. ОЗУ выполнено на
специальных символов. Микросхемы двух микросхемах DD25 и DD26
DD1, DD2 устраняют дребезг контактов. объемом 1 Кбайт и используется для
Типовое расположение клавиш показано организации стековой памяти и рабочих
на рисунке 64. ячеек МОНИТОРа. ПЗУ расположено в
В дисплейный модуль входят также адресном пространстве F800—FFFFH, а
микросхемы ПЗУ/ОЗУ, которые ОЗУ — в F400—F7FFH. (Распечатка
необходимы для реализации кодов МОНИТОРа и знакогенератора
программной части дисплейного модуля. приведена в таблицах 10 и 11.) В
В ПЗУ на микросхеме DD27 записана дисплейном модуле используются
управляющая программа — МОНИТОР сигналы шин адреса, данных и
объемом 2 Кбайта, обслуживающая управления первого модуля «ЮТ-88»
136
137
138
11. Коды знакогенератора
139
140
141
Запуск МОНИТОРа дисплейного 12. Сигналы шин адреса, данных и
модуля производится с адреса F800H. управления дисплейного модуля «ЮТ-88»
При этом происходит настройка Номер сигнала Обозначение Назначение
шины сигнала
указателя стека, занесение констант и управления на
сигнала
начальных значений в рабочие ячейки общей схеме
ОЗУ, настройка программируемого 9 ЧТЗУ Чтение ПЗУ/ОЗУ
периферийного адаптера клавиатуры. 10 ЗПЗУ Запись в ОЗУ
После настройки адаптера клавиатуры 11 ЧТВВ Чтение портов
на экране дисплея выводится сообщение 12 Запись в порты
ЗПВВ
«ЮТ-88». Появление на экране стрелки и
15 OXXX Выборка области
курсора говорит о том, что можно 0FFFH
вводить директиву (команду).
16 EXXX Выборка области
Е000—EFFFH
144
МОНИТОР дисплейного модуля (как чтения данных с магнитофона при
и МОНИТОР процессорного модуля) наличии прерываний в микроЭВМ.
позволяет осуществить привязку работы Директивами записи и чтения
программ к реальному времени МОНИТОРа— «О» (директивы «9», «А»
благодаря специально встроенной соответственно) следует пользоваться
программе часов. При совместном при небольшом объеме информации, так
использовании этих двух модулей как в драйверах записи и чтения байта на
возможны два режима работы. В первом магнитофон этого МОНИТОРа
используется МОНИТОР процессорного программно не делается запрет
модуля (для удобства в дальнейшем мы прерывания, и при большом объеме
будем обозначать его как МОНИТОР— данных для надежной записи и чтения на
«О»). После запуска происходит магнитофон следует аппаратно (с
установка времени и пуск часов. Затем помощью дополнительного тумблера)
после запуска МОНИТОРа дисплейного отключать запрос прерывания от вывода
модуля (в дальнейшем это МОНИТОР— 14 микропроцессора и подключать этот
«F») с помощью директив «В», «ВК» вывод на общий провод. Директивы
можно вывести показания времени из записи и чтения данных «O» и «I»
ячеек памяти C3FDH, C3FEH, C3FFH на МОНИТОРа — «F» дисплейного модуля
светодиодные индикаторы используют программный запрет
процессорного модуля. Второй режим прерывания в драйверах записи и чтения
предполагает отключение МОНИТОРа — байта на магнитофон (остановка часов на
«О» и использование программы часов в время вывода и ввода байта). Это требует
МОНИТОРе—«F». В этом случае коррекции времени после работы с
информация о времени содержится в магнитофоном, например с помощью
следующих ячейках памяти: F6FDH— директивы «М». Используемый в «ЮТ-
секунды, F6FEH—минуты, F6FFH — 88» формат записи данных на магнитную
часы. Чтобы запустить программу часов ленту в МОНИТОРе — «О» совпадает с
в МОНИТОРе—«F», необходимо форматом записи, используемым в
убедиться до отключения МОНИТОРа — «Микро-80», а при использовании
«О», что часы «идут» с помощью директив МОНИТОРа — «F» совпадает с
директивы «В». Затем директивой «М» форматом записи «РК-86». Благодаря
загрузить в ячейки ОЗУ следующие коды этому обеспечивается программная
C000H—F3H, С001Н—СЗН, С002Н— совместимость по вводу данных с этими
00Н, С003Н—F8H, С038Н—СЗН, наиболее распространенными среди
С039Н—С1Н, С0ЗАН—FFH, F6FDH— радиолюбителей микроЭВМ. Следует
00Н (секунды), F6FEH—(код минуты), лишь напомнить, что контрольная сумма
F6FFH—(код часы). Далее переключают в «РК86» и «Микро-80» считается по-
ОЗУ из области С000—C3FFH в область разному и совпадает лишь в младшем
0000—03FFH, одновременно отключив байте.
МОНИТОР — «О» (для этого подойдет
любой сдвоенный тумблер). Затем по
сигналам точного времени необходимо
нажать на клавишу «Уст», пустив тем
самым часы в дисплейном модуле.
А теперь несколько слов о
пользовании директивами записи и
145
14. Стандартные подпрограммы МОНИТОРа дисплейного модуля
146
15. Алфавитно-цифровые коды «ЮТ-88»
147
16. Управляющие коды МОНИТОРа дисплейного модуля
убедитесь в наличии этих кодов, а также F800H. При этом экран очистится и в
сигнала выборки микросхем ОЗУ и верхнем левом углу появится надпись
управляющих сигналов ЗПЗУ и ЧТЗУ . «ЮТ-88», а также стрелка и курсор.
Изменяя адрес ОЗУ, проверьте в статике После этого подключите клавиатуру и
работу ОЗУ дисплейного модуля. проверьте работу директив
МОНИТОРа—«F».
Проверку дисплейного модуля в
В процессе работы объем ОЗУ,
динамике начните с подсчета
которое расположено в адресах C000H —
контрольной суммы МОНИТОРа—«F»
C3FFH и F400H—F7FFH, может
дисплейного модуля с помощью
оказаться недостаточным. Но его
директивы «8». Контрольная сумма
нетрудно нарастить. Увеличить объем
должна равняться ED46H. Затем
ОЗУ до нескольких килобайт проще
проверьте в динамике ОЗУ дисплейного
всего на основе микросхем ОЗУ
модуля, копируя адреса F4000, F7FF и
статического типа. На рисунке 65
Е800, EFFFH, МОНИТОР—«F» с
изображена электрическая схема блока
помощью программ копирования и
ОЗУ объемом 4 Кбайта на двух
сравнения данных МОНИТОРа—«О».
микросхемах КР537РУ10 (DD1, DD2).
После этого с помощью директивы «0»
Выбор микросхем осуществляется с
непрерывно записывайте код ЗЗН в
помощью дешифратора (DD3), на выходе
экранную область ОЗУ, начиная с адреса
которого формируются сигналы выборки
Е800Н. Если наблюдается
областей ОЗУ по 2 Кбайта в диапазоне
последовательное заполнение строк
адресов 0000Н—7FFFH. В данном случае
экрана цифрами «3», то все в порядке.
микросхемы ОЗУ выбираются в областях
Искажение формы символа или вывод
3000Н—37FFH (DD1) и 3800Н—3FFFH
другого символа говорит о
(DD2).
неисправности ПЗУ знакогенератора или
Окончательную проверку работы
обрывах в цепях, соединяющих выходы
дисплейного модуля можно провести с
ПЗУ знакогенератора со входами
помощью игровой программы
регистра сдвига.
«ТЕТРИС». Распечатка программы
При корректном выводе различных
(пусковой адрес 3000Н) приведена в
символов (см. коды символов в табл. 15)
таблице 18.
директивой «7» запустите МОНИТОР—
«F» дисплейного модуля по адресу
149
Рис. 65. Электрическая схема блока ОЗУ объемом 4 Кбайта.
При работе с дисплейным модулем и стабилизатора его регулирующий
в дальнейшем с модулем динамического элемент на транзисторах VT3 — VT5
ОЗУ необходимо использовать должен быть запитан от дополнительного
дополнительный источник питания + 5В выпрямителя источника смещения,
повышенной мощности. Его выполненного на диодах. С целью
электрическая схема дана на рисунке 66. упрощения стабилизатора
Источник питания включает в себя дифференциальный усилитель в нем
понижающий трансформатор T1, заменен обычным на транзисторе VT2.2, а
двухполупериодные выпрямители с образцовое напряжение формируется на
фильтрующими конденсаторами и стабилитроне VD5. Вместе с
стабилизатор напряжения. Номинальное транзистором VT2.1 этот стабилитрон
действующее значение напряжения на образует генератор стабильного тока. Для
вторичной обмотке трансформаторов, получения минимального напряжения
при котором стабилизатор имеет
максимальный кпд при токе нагрузки 5 А
и максимальном размахе пульсаций 10
мВ, составляет около 8 В.
Для получения высокого кпд
150
18. Коды программы «Тетрис»
151
152
Рис. 66. Электрическая схема дополнительного источника питания.
153
работы этого генератора применено можно заменить транзисторами КТ315, а
«токовое зеркало» на транзисторах VT1.1, К159НТ5 на КТ361. Все они должны
VT1.2. Режим генератора тока быть подобраны по коэффициенту
устанавливают резистором R2 на уровне передачи тока. Корпуса их желательно
2 мА. При установке требуемого склеить попарно. В качестве
напряжения на выходе + 5 В может понижающего трансформатора
потребоваться подстройка резистора R4. рекомендуем использовать ТН-35-
В источнике питания дисплейного 127/220-50.
модуля транзисторную сборку К159НТ1
ЭЛЕКТРИЧЕСКАЯ СХЕМА
154
усилитель считывания, поэтому использовании микросхем К565РУ5Д с
процедуру регенерации можно временем цикла 450 мс.
выполнять одновременно для всей Такой режим регенерации позволяет
строки. Ограниченное число выводов на организовать обмен данными в
корпусе микросхем ОЗУ требует синхронном режиме, не требует
применения коммутации информации о состоянии
(мультиплексирования) режима выборки микропроцессора и, главное, исключает
адреса, при котором для выбора строк и его простой.
столбцов матрицы ячеек памяти В режимах чтения и записи
используются одни и те же адресные регенерация ячеек памяти,
входы. подключенных к выбранной строке,
Вначале производится выбор строк осуществляется автоматически. В
путем подачи соответствующего кода на режиме чтения на вход микросхем WE
адресные входы А0...А7 и нулевого подается уровень логической единицы, а
уровня на вход сигнала выборки строк в режиме записи — уровень логического
RAS. При этом, код строки записывается нуля, после чего на входы А0...АН
в адресный регистр и с помощью подается код столбца и с некоторой
дешифратора строк выбирается задержкой нулевой уровень на вход
регенерируемая строка. Для надежного выбора столбца CAS. С помощью
хранения информации необходимо дешифратора столбцов определенная
производить режим регенерации по шина столбца через соответствующий
всему диапазону строк с периодом не ключ выборки подключается к шине
более 2 мс. данных, осуществляя запись или
Существует несколько стандартных считывание информации в выбранной
алгоритмов процедуры регенерации. В ячейке памяти.
частности, можно до начала регенерации Электрическая схема модуля
приостановить работу микропроцессора, динамического ОЗУ изображена на
воздействуя на его вход ГТ. Получив рисунке 67. Модуль включает в себя
ответный сигнал ОЖ, можно произвести контроллер ОЗУ на микросхемах DD1 —
цикл регенерации. В описываемом DD11 и основной блок ОЗУ объемом 64
модуле динамического ОЗУ использован Кбайта на микросхемах DD12 — DD19,
другой путь: регенерация происходит не перекрывающий адресное пространство
в моменты остановки микропроцессора, а 0000Н FFFFH. Модуль динамического
в интервале времени между двумя ОЗУ может быть использован как с
любыми циклами обращения к памяти. процессорным, так и с дисплейным
Минимальный цикл между обращениями модулем.
к памяти для микропроцессора Поскольку в процессорном и в
КР580ВМ80А равен трем тактам (трем дисплейном модулях могут быть свои
периодам тактовой синхросерии Ф2). ПЗУ — ОЗУ, в модуле динамического
При используемой в компьютере частоте ОЗУ имеется 8-входовая схема (DD8)
кварцевого резонатора 16 МГц блокировки запросов обращения к
длительность такта составляет 0,565 мкс. модулю динамического ОЗУ. В
Для реализации «прозрачной» частности, при работе модуля
регенерации ОЗУ в этом случае имеется динамического ОЗУ только с микроЭВМ
достаточно времени даже при минимальной конфигурации на входы
блокировки
Рис. 67. Электрическая схема динамического ОЗУ.
следует подать сигналы выборки ОЗУ будет составлять 60 Кбайт от 1000Н
адресного пространства 0000Н—0FFFH, до FFFFH.
а на входы выборки кристалла микросхем При подключении дисплейного
ОЗУ процессорного модуля КР541РУ2 — модуля на входы блокировки
сигналы логической единицы. В этом подключают
случае доступная область динамического
158
ПРОГРАММАТОР ПЗУ «ЮТ-88»
160
161
Запуск программы производите противном случае микросхема ПЗУ
директивой G100, в результате чего на может быть испорчена. Подключив
экране дисплея появится заголовок и источник, нажимают кнопку ВК.
меню: Начинается процесс программирования,
Программатор ПЗУ **ЮТ-88** который завершается появлением
Перечень команд: сообщения:
R — ЧТЕНИЕ W —ЗАПИСЬ Е — ВЫКЛЮЧИТЕ НАПРЯЖЕНИЕ
ВЫХОД в МОНИТОР + 26В
КОМАНДА Выключив напряжение
Дальнейшая работа идет в диалоговом дополнительного источника и нажав на
режиме. Если задать команду R, то клавишу ВК, вы опять вызываете меню.
появится сообщение: РЕЖИМ ЧТЕНИЯ Для проверки правильности
ЗАДАЙТЕ НАЧАЛЬНЫЙ АДРЕС ОЗУ программирования микросхемы ПЗУ
Задав адрес, например 1000, вы считайте ее содержимое с помощью
прочтете на экране контрольную сумму директивы «R» и убедитесь в
незапрограммированной ПЗУ: F800. правильности контрольной суммы.
Задав команду W, перейдете в режим Учитывая, что программа занимает
программирования: меньше 2 Кбайт, совпадение контрольной
РЕЖИМ ЗАПИСИ суммы произойдет, если во всех
ЗАДАЙТЕ НАЧАЛЬНЫЙ АДРЕС остальных ячейках записаны нули.
ОЗУ Однако для дальнейшего использования
Допустим, вы хотите оставшегося пространства в микросхеме
запрограммировать первую микросхему ПЗУ советуем заполнить его кодом FFH.
ПЗУ, записав в нее программу Во время программирования
программатора. Для этого укажите адрес происходит проверка каждой ячейки
2000, куда она была скопирована. После памяти ПЗУ, и если совпадения данных в
этого на экране появится текст: ПЗУ и ОЗУ не происходит, то на экране
ВКЛЮЧИТЕ НАПРЯЖЕНИЕ появляется символ #, сигнализирующий о
+ 26 вольт необходимости прервать процесс
При программировании микросхем программирования, отключив
ПЗУ на вывод 21 подается напряжение + напряжение + 26В.
24...+26В, причем между выводом 21 Информация для записи в ПЗУ может
микросхемы и источником напряжения размещаться в любом месте адресного
необходимо включить пространства компьютера, кроме области
токоограничивающий резистор 0000Н—07FFH.
сопротивлением 200...300 Ом, в
163
Переменная часть БСВВ обеспечивает называемой базовой страницей памяти. Сюда
выполнение простейших операций передачи включены несколько сегментов кодов и данных,
информации от микропроцессора к устройствам обеспечивающих вход в БДОС и содержащих
ввода/вывода с помощью драйверов нулевого некоторые системные параметры. В частности, в
уровня, входящих в МОНИТОР дисплейного ячейки 0—0002Н записан переход на БДОС JMP
модуля. DA03H, обеспечивающий перезапуск СР/М —
«горячий» старт системы. В ячейку 0004Н
Структура и размещение СР/М записывается номер диска (начальный номер диска
Операционная система СР/М в виде распечатки А — 0).
шестнадцатеричных кодов представлена в В ячейки 0005—0007Н записан переход на
приложении 2. Она включает в себя, кроме БДОС и БДОС JMP СС06Н. Этот переход может
БСВВ, еще и начальный загрузчик, использоваться для вызова операций БДОС. Для
обеспечивающий ее размещение как в требуемых этого размещают в регистр С номер функции, а в
адресах ОЗУ компьютера, так и на регистровую пару DЕ ее параметры, после чего
соответствующих «дорожках» электронного используют команду CALL 0005Н.
квазидиска. Операционную систему первоначально Перечень основных функций приведен в
набирают вручную по директиве «М» МОНИТОРА таблице 24.
«ЮТ-88», проверяя правильность набора по блокам Область памяти с 100Н до нижнего адреса
в 1 Кбайт по таблице контрольных сумм. В адреса БДОС С400Н называется областью транзитных
4BF0H — 4FFFH во все ячейки директивой «F» программ. Именно в эту область загружаются
заносится код Е5Н. Затем операционную систему прикладные программы для исполнения.
записывают на магнитную ленту для последующего БДОС занимает адресное пространство от
использования. Начальные адреса операционной С400Н до D9FFH, а БСВВ от DA00H до DBFFH.
системы 3100Н — 4FFFH. Для ее загрузки Базовая система ввода/вывода реализует набор
необходимо набрать директиву G3100. В результате простейших операций работы с устройствами
чего она будет загружена в ОЗУ квазидиска. При ввода/вывода и с квазидиском. Только эта часть
этом сразу же ей передается управление. непосредственно взаимодействует с внешними
устройствами, только она зависит от особенностей
23. Контрольные суммы СР/М и характеристик внешних устройств. Все другие
К3100, 33FF АС22 компоненты СР/М общаются с периферией только
К3400, 37FF D667 через БСВВ.
К3800, 3BFF 0FF5 Для обращения к реализуемым БСВВ функциям
КЗС00, 3FFF 0F56 имеется 17 точек входа, расположенных по
К4000, 43FF 3В98 фиксированным адресам. Эти точки входа
К4400, 47FF 1А30 реализованы в БСВВ как «вектор переходов» — 17
К4800, 4BFF ЕВЕ6 команд перехода, каждая из которых передает
К4С00, 4FFF 9400 управление некоторой из содержащихся внутри
К3100, 4FFF 7782 БСВВ подпрограмм или подпрограммам
Часть ячеек памяти операционной системы МОНИТОРа «ЮТ-88».
СР/М используется в области 0000Н — 0100Н,
164
№ Название функции Параметры
0 Завершение работы программы С=0
1 Ввод символа с клавиатуры С = 1, символ в А
2 Вывод символа на экран С = 2, Е код символа
6 Ввод/вывод С = 6, Е код символа для вывода или Е = FFH
для ввода в А код введенного символа. А = 00,
если символ не введен
9 Вывод на экран сообщения С = 9, DE — адрес начала сообщения
10 Ввод строки с клавиатуры С = 0АН, DE — адрес буфера строки
11 Опрос состояния клавиатуры C=0ВН
А = 00Н — код готовности
А = FFH — код неготовности
165
по завершении должна передать управление на WBOOT
(«горячий СТАРТ»).
Распределение зон ОЗУ после загрузки в нее
операционной системы СР/М показано на рисунке 70.
Файловая система СР/М
При использовании ОС СР/М появляется
возможность снабдить программы и тексты
специальными именами и хранить их в виде записей на
гибком магнитном диске. Такой набор записей,
рассматриваемый в процессе пересылки и обработки
как единое целое, называется файлом.
Работа с файлами — одна из центральных задач
СР/М, выполняется она постоянной частью СР/М —
БДОС. Файловая система СР/М автоматически
распределяет место в оглавлении и области данных при
создании и расширении файла и освобождает место,
занятое файлом при его удалении. Если для исполнения
операции в оглавлении или области данных диска нет
места, файловая система сообщает об этом. Файловая
система СР/М обеспечивает 4 вида операций: доступ к
файлам, доступ к оглавлению (каталогу), доступ к диску
и смешанные операции. Каждый файл имеет только ему
принадлежащее имя, состоящее из собственного имени
и типа файла, разделенных точкой. Имя файла можно
составить максимум из восьми символов, исключая
символы *?. Преимущественно используют латинские
буквы и цифры. Для удобства применяются
общепринятые названия типов файлов:
.СОМ — -транзитная команда, программа в
машинном коде, готовая к исполнению;
.MAC — программа на языке Ассемблера (текст);
.ТХТ — текстовый файл, подготовленный
редактором;
.BAS — программа на Бейсике (текст);
.FOR — программа на Фортране (текст);
Рис. 70. Распределение зон ОЗУ СР/М.
166
HLP — текстовый файл с разъяснением Электронный квазидиск — это модуль ОЗУ,
прикладной программы. подобный тому, который мы рассмотрели ранее, с
Прежде чем рассмотреть эти операции, объемом памяти 64 ... 256 Кбайт, имеющий
познакомимся с конкретной организацией гибкого дополнительные возможности по вводу/выводу
диска и его электронного заменителя — квазидиска. информации в соответствии с командами БСВВ.
Диск состоит из 77 дорожек, пронумерованных Существуют разные способы организации обмена
от 0 до 76. На каждой дорожке находится 26 информацией с электронным квазидиском. Можно
секторов, и в каждом секторе 128 байт. Таким для этого использовать дополнительные порты
образом, емкость диска равна 256 байт. Это приема и выдачи данных на квазидиск, порт
адресное пространство используется следующим управления и порты адресации квазидиском.
образом: нулевая и первая дорожки содержат Однако наиболее просто можно осуществить обмен
операционную систему СР/М, в частности, БДОС с квазидиском, инициализируя его как адресное
размещается в 26 секторах нулевой дорожки и в 19 пространство стека. На рисунке 71 изображена
секторах первой дорожки. Там размещается та же электрическая схема квазидиска. Кроме микросхем
информация, что и в ОЗУ от С400Н до D9FFH. С 20 ОЗУ, в него входит еще семь микросхем, которые
по 26 сектор первой дорожки размещается БСВВ требуются для практической реализации
(DA00H — DBFFH). В двадцати шести секторах электронного квазидиска. Микросхемы ОЗУ
второй дорожки содержатся оглавление и включаются параллельно тем, что используются в
справочные данные о файлах, находящихся на модуле ОЗУ, т.е. всего может быть от одного до
диске. четырех блоков по восемь микросхем К565РУ5 в
каждом.
167
Отдельно у этих блоков включаются только выводы УС + М эквивалент нажатия «ВК»;
CAS: CAS 1 (квазидиск на 64 Кбайт, микросхемы УС + J эквивалент перевода строки;
ОЗУ DD8 — DD15), CAS 2 (квазидиск на 128 Кбайт, УС + S приостанавливает вывод текста на
микросхемы ОЗУ DD16 — DD23), CAS 3 дисплей. Повторное нажатие возобновляет вывод
(квазидиск на 192 Кбайт, микросхемы DD24 — текста.
DD31) и CAS 4 (квазидиск на 256 Кбайт, Используемые в СР/М команды разбиваются на
микросхемы DD32 — DD39). две категории:
Такое простое взаимодействие с квазидиском встроенные команды («резидентные») и
достигнуто благодаря дополнительному транзитные команды.
управляющему сигналу, который формируется на Встроенные команды по сути являются частью
микросхеме DD1.1 из слова состояния (2-й разряд) операционной системы СР/М. Обращение к ним и
и который активен, когда идет обращение к стеку. их использование осуществляются простым вводом
Таким образом, при обращении к стеку и когда в имени соответствующей команды независимо от
порт 40Н записано 00, открывается электронный того, имеется ли в данный момент в системе
квазидиск. Если инициализация порта 40 не квазидиск. В СР/М имеются следующие встроенные
произведена, то стек формируется как обычно, в команды:
адресном пространстве основного ОЗУ. DIR — просмотр оглавления диска;
Каждый из блоков дополнительной памяти REN — переименование файлов;
имитирует диск со следующими параметрами: ERA — удаление файлов;
общая емкость — 64 Кбайт; число «дорожек»— 64; TYPE — просмотр содержимого файла;
число секторов на дорожке — 8. SAVE — сохранение на диске области ОЗУ в
Приведенная распечатка кодов загрузчика виде файла.
СР/М соответствует объему ОЗУ в 256 Кбайт. При Например, если набрать команду DIR и нажать
использовании меньшего объема диска в ячейку ВК, т.е. A> DIR <ВК>, то, поскольку в ОЗУ
ОЗУ загрузчика СР/М 4А50Н следует ввести квазидиска отсутствуют какие-либо файлы, на
поправку: для диска объемом 64 Кбайт — 39Н; для экран дисплея будет выдано следующее сообщение:
диска объемом 128 Кбайт — 79Н; для диска No files
объемом 192 Кбайта- В9Н. А>
Как уже отмечалось, загрузка операционной Работу со встроенными командами мы
системы СР/М осуществляется командой рассмотрим в дальнейшем, а сейчас перейдем к
МОНИТОРа G3100. После этого на экране дисплея транзитным командам, которые хранятся на диске в
появляется сообщение: отдельных файлах с именами, оканчивающимися
СРМ V—2,2 DISK RAM 256 К расширением «СОМ». Транзитные команды по сути
А> дела являются программами СР/М, но термин
Появление на экране дисплея сообщения- «транзитные» подчеркивает, что их программы
подсказки А> говорит о готовности ОС СР/М к можно загружать в оперативную память с адреса
работе и приему команды. Если ввести некоторый 100Н, затем занести в диск, а при необходимости и
произвольный набор символов, например: удалить. Все транзитные команды в нашем случае,
А>ВВ учитывая работу с электронным квазидиском, будут
и нажать клавишу «ВК», то в ответ получим: храниться на кассетах. Впрочем, если приспособить
ВВ? для питания квазидиска автомобильный
А> аккумулятор, то отпадет необходимость в
При подаче в компьютер несуществующей или перегрузке квазидиска рабочими программами при
синтаксически ошибочной команды система перерывах в работе с отключением питания.
выполнить ее не может. Она повторяет введенную Для вызова транзитных команд на исполнение
серию символов с дополнением знака вопроса и достаточно просто ввести имя файла без
переходит в режим ожидания новой команды, расширения «СОМ». СР/М определит наличие
выдавая подсказку А>. файла с указанным именем и расширением «СОМ»
Если при наборе команды замечена ошибка еще в каталоге квазидиска и при его обнаружении
до нажатия клавиши ВК, то можно вернуться назад вызовет данную программу на исполнение. В СР/М
клавишей ПРОБЕЛ или одновременным нажатием имеется множество транзитных командных файлов,
клавиш УС + Н. некоторые из них приведены далее.
В СР/М имеется еще ряд полезных В качестве примера рассмотрим работу
управляющих символов: транзитной команды CH.COM. Таблица распечатки
УС + X удаляет последнюю строку символов;
168
командного файла в шестнадцатеричных кодах С помощью встроенной команды уничтожим
приведена в приложении 2.В МОНИТОРс «ЮТ-88» вспомогательный файл на диске:
эта программа набирается с адреса 100Н и A) ERA EX.COM <ВК> Если теперь вывести
записывается на кассету. Предварительно оглавление диска, то
загружается операционная система СР/М и А> DIR <ВК>
перезапускается директивой G с адреса DA00H, в А: СН СОМ
результате чего на экране появится подсказка: А> т.е. EX.COM на диске уничтожен.
Чтобы занести файл CH.COM, который Восстановим файл EX.COM на диске, считав
расположен в адресном пространстве 100Н-3FFH, его с кассетного магнитофона. Для этого следует
воспользуемся резидентной командой SAVE, набрать:
формат командной строки которой требует А) СН EX.COM <ВК>
указания дополнительной информации: число Отсутствие имени файла в каталоге диска
сохраняемых на диске страниц памяти и имя файла. приводит к режиму чтения файла с магнитной
Одна страница памяти составляет 256 байт. ленты.
Наберем текст: На дисплее появится сообщение READY TR
A>SAVE 3 CH.COM <ВК> FOR INPUT, PRESS CR т.е. при готовности
В результате чего командный файл CH.COM магнитофона для воспроизведения записи нужно
будет занесен на диск. Воспользовавшись командой нажать ВК. Если файл правильно считался в ОЗУ
DIR диска, появляется подсказка А>.
A> DIR <ВК> Проверить загрузку файла можно, опять
На экране получим ответ, подтверждающий применив команду DIR. При чтении файла
наличие в каталоге CH.COM: возможны и различные сообщения:
А: СН СОМ NO SOURCE PRESENT, READ ERROR
А> что означает — файл не указан в командной
Файл CH.COM будет одним из наиболее часто строке или чтение с ошибкой.
нами используемых, так как с помощью него будет NO DIRECTORY SPACE
осуществляться обмен файлами между диском и означает, что не хватает памяти в каталоге
кассетным магнитофоном. диска.
Чтобы проиллюстрировать работу CH.COM, NOT ENOUGH MEMORY
создадим с помощью встроенной команды SAVE означает, что не достаточно места в ОЗУ
некоторый вспомогательный небольшой по объему электронного диска.
файл: Рассмотрим работу с еще одним часто
A>SAVE EX.COM <ВК> используемым файлом STAT.COM, который
Проверим его наличие в каталоге с помощью применяется для получения списка имен файлов на
команды DIR: диске, определения размеров файлов, определения
А:СН СОМ : EX СОМ объема неиспользованного дискового пространства
А> и для выполнения других функций. Предположим,
Теперь на диске два файла. Запишем что с помощью CH.COM мы считали STAT.COM на
вспомогательный файл EX.COM на магнитную диск. При последовательном вводе команд STAT
ленту кассетного магнитофона. Для этого наберем <ВК> на дисплей выдается информация о
текст: состоянии квазидиска:
А>СН ЕХ.СОМ<ВК> A:R/W, SPACE : 152К
В результате на дисплее появится сообщение А>
CHANGER VERS1.1 READY TR FOR Это сообщение означает, что квазидиск
OUTPUT, PRESS CR установлен в режим ЧТЕНИЕ/ЗАПИСЬ и что объем
что означает: если магнитофон к записи готов и оставшегося на диске свободного для доступа
его лентопротяжный механизм включен, нужно пространства составляет 152 Кбайт.
нажать на клавишу ВК. После записи файла на Команда STAT позволит изменять статус диска,
магнитофон на экране появляется сообщение: защитив его от возможной на него записи. Чтобы
READY TR FOR VERIFY, PRESS CR установить режим «только чтение», необходимо
Если магнитофон готов к проверке записи, набрать сообщение:
нужно нажать ВК. Если запись сделана с ошибкой, A>STAT A:R/0 Исполнение команды проверим
то на дисплее появится сообщение: A>STAT <ВК>
VERIFY ERROR
В противном случае никакого сообщения не
появляется, а вновь на экране подсказка
А>
169
A:R/O, SPACE: 152K В имени файла может быть указано не более
A> восьми метасимволов ?, а в расширении не более
Команда STAT позволяет выводить на дисплей трех.
характеристики файлов. С помощью встроенной команды REN можно
A>STAT *.* <ВК> переименовать файл. Например:
В результате обработки этой команды будут А> REN FILE.COM = STAT.COM <ВК>
выданы характеристики всех файлов, которые Однако если файл имеет статус «только
хранятся на квазидиске. В нашем случае на диске чтение», то переименовать его не удастся.
имеется только один файл: С помощью команды TYPE можно выводить на
RECS BYTES EXT АСС дисплей текстовые файлы.
41 6К 1 R/O A:STAT.COM С командой ERA мы уже знакомы. С помощью
BYTES REMAINING ON A:152K нее удаляются с диска файлы. Например:
A> А> ERA FILE. COM <ВК>
Представленные характеристики имеют А>
следующий смысл: Если теперь вывести оглавление диска, то
RECS — определяет количество записей, из A>DIR <ВК>
которых состоит данный файл. Одна запись NO files
содержит 128 байт; А>, т.е. файл на диске уничтожен.
BYTES — определяет округленное значение С командой ERA возможно использование
размера файла в килобайтах; метасимволов, например для удаления всех файлов
ЕХТ — это еще одна единица измерения A> ERA *. * <ВК>.
размера файла эксистент, если файл не превышает Файлы, имеющие статус «только чтение»,
16 Кбайт, то выдается 1; удалены быть не могут.
АСС — от английского слова ACCESS — Во избежание неожиданностей при
означает статус доступа к файлу, R/O — только использовании метасимволов с командой ERA
чтение. прежде используйте команду DIR с той же
Команду STAT можно использовать для последовательностью метасимволов, проверив все
спецификации файла, когда известны не полное имя файлы, входящие в группу до их удаления.
или расширение, а только некоторые символы из Наиболее распространенные командные файлы
этого имени. Неизвестные символы дополняют операционной системы СР/М
метасимволами «*» и «?» или их комбинациями. 1. POWER. СОМ, объем 15 Кбайт. Программа
Например: осуществляет обмен данными между
STAT FILE. * периферийными устройствами, копирование
STAT *. COM файлов, тестирование дисков и т.д.
STAT FI??. ?0? 2. ED. СОМ, объем 7 Кбайт. Программа
STAT F??. * текстового строкоориентированного редактора.
и т.д. 3. WM. СОМ, объем 10 Кбайт. Программа
Для обозначения группы символов экранного редактора, полностью использующего
используется метасимвол *; для создания текстовых файлов возможности
для обозначения одного символа — ?. дисплея.
Такие метасимволы допускается применять и 4. L80. СОМ, объем 11 Кбайт. Программа,
со встроенными командами DIR и ERA. В преобразующая файлы, полученные после
остальных случаях их использование приведет к трансляции, в файлы с исполняемым машинным
возникновению ошибки. В первом из кодом, а также осуществляющая сборку различных
рассмотренных выше примеров командой STAT файлов в единый исполняемый файл.
будут выведены характеристики всех файлов с 5. MBASIC. СОМ, объем 28 Кбайт.
именем FILE, имеющие любые расширения. Во Интерпретатор с языка Бейсик.
втором — команда STAT выдает характеристики 6. BASCOM. СОМ, объем 31 Кбайт.
только командных файлов. В третьем примере Компилятор с языка Бейсик.
осуществится вывод всех файлов, у которых имена 7. F80. СОМ, объем 27 Кбайт. Компилятор с
содержат буквы FY и любые другие две буквы и языка Фортран.
имеющих расширение со средней буквой О. В
четвертом примере команда STAT приведет к
выдаче характеристик всех файлов, начинающихся
буквой F и имеющих любое расширение.
170
Рассмотрим первую в этом списке программу Информация о занятом и свободном
POWER, расширяющую возможности компьютера пространстве на диске, о состоянии файлов (R/W —
«ЮТ-88» при работе в операционной системе СР/М. запись разрешена, R/O — запись запрещена)
Программа POWER предназначена для работы с выводится с помощью команды
файлами, находящимися в квазидиске или в ОЗУ. С АО=STAT
ее помощью можно просматривать файлы, менять Для просмотра каталога пользуются командой
их содержимое и название, удалять, а также DIR.
просматривать и менять информацию в ОЗУ. Сортировка каталога осуществляется командой
POWER позволяет получить информацию о SORT.
квазидиске, тестировать квазидиск, изолировать Имеется пять способов сортировки каталога:
бракованные области памяти. АО = SORT 1 (по именам файлов)
Для вызова POWER необходимо после выхода АО = SORT 2 (по именам файлов, но в конце
в СР/М с помощью загрузчика CH.COM загрузить идут системные файлы)
файл POWER. СОМ в квазидиск. Затем ввести: АО = SORT 3 (по типам расширения файлов)
a>POWER (вк) АО = SORT 4 (по типам расширения, но
После загрузки POWER на экране появится его в конце идут системные файлы)
промт: АО = SORT 0 (без сортировки)
АО= Переименовать файлы можно командой REN
POWER имеет два формата команд. Простой AO = REN *** (старое имя файла)
формат: Для установки состояния файлов — создания
АО = команда (вк) невидимых файлов — служит команда SETSYS,
Сложный формат: хотя они доступны СР/М
АО = команда параметр (вк) АО = SETSYS *** (имя файла)
Каждая команда может сопровождаться Команда SETDIR противоположна по смыслу
параметрами, изменяющими состояние работы команде SETSYS.
программы POWER. Отдельные параметры могут Защита файлов от записи осуществляется
задаваться вслед за промтов вообще без команды. командой SETRO
В POWER могут использоваться команды с AO = SETRO *** (имя файла)
многозначными файловыми ссылками, например Команда SETWR противоположна по смыслу
для вывода каталога: команде» SETRO.
АО = команда R*.* или АО =команда R** Подробную информацию о файле можно
В этом случае будет выведен каталог файлов, получить с помощью команды SIZE.
начинающихся с буквы R. В первом столбце выдается количество
Если требуется указать в имени файла число использованных секторов, во втором — количество
неизвестных букв, то ставится ?: свободных секторов, в третьем — объем памяти,
АО = команда A??W.C?M — каталог файлов, занимаемой файлом (кбайт), в четвертом — объем
имена которых начинаются с буквы А, памяти, занимаемой группой файлов. Команды
заканчиваются W и содержат максимум 4 буквы, а пересылки данных из квазидиска в ОЗУ и обратно:
расширение содержит 3 буквы, начинается с С и 1. АО = LOAD (имя файла, тип) ХХХХ
заканчивается М. Эта команда загружает файл из квазидиска в
Чтобы вывести весь перечень команд ОЗУ, начиная с адреса ХХХХН > 4000Н.
программы POWER, необходимо набрать: Завершается выполнение команды выводом на
АО=? экран конечного адреса ОЗУ и числа секторов,
Для вывода на экран списка скрытых команд которые занимает файл.
нужно ввести: 2. АО-SAVE (имя файла.тип) ХХХХ
аО=?? YY
Для тестирования диска пользуются командой Команда загружает файл из ОЗУ с адреса
АО = TEST ХХХХН в квазидиск, занимая число секторов,
Диск полностью прочитывается, вычисляется равное YY (если файл был загружен командой
контрольная сумма, изолируются дефектные LOAD и его длина не увеличилась, то количество
сектора, образуя файл = = =.= = = с целью принятия секторов можно не указывать).
дальнейшего решения. 3. DUMPA — вывод на экран ASCII символов.
Информацию о диске — емкость, формат, DUMPH — вывод на экран двоичных кодов.
плотность и где находятся системные треки —
можно получить с помощью команды
АО=DISK
171
DUMPX — вывод на экран и двоичных, и Если же искомая последовательность
ASCII кодов. заключена в кавычки, го ведется поиск символов
Имеется несколько вариантов использования ASCII.
команды DUMP: Для запуска программ в POWER имеются
AO = DUMPH ХХХХ YYYY — вывод на экран несколько команд:
информации с адреса ХХХХН по адрес YYYYH 1. Команда GO считывает программу с
АО = DUMPH XXXX,N - вывод на экран N квазидиска, загружает ее в память и затем передает
байт информации с адреса ХХХХН. управление по новому адресу. Команда удобна для
AO-DUMPH ХХХХ,, — вывод всей памяти, запуска программ, которые работают с адреса,
начиная с адреса ХХХХН. отличающегося от стандартного 100Н.
4. Просмотр и исправление текстов с помощью AO = GO (имя файла) ХХХХ
команды DS: ХХХХН — адрес загрузки программы.
AO=DS ХХХХ 2. Команда JP позволяет запустить
ХХХХН — начальный адрес памяти. На экран программу, уже имеющуюся в памяти, с указанного
выводится следующая информация: адреса, при этом по завершении выполнения
адрес ячейки шестнадцатеричный десятичный программы происходит выход из POWER:
памяти код код АО = JP ХХХХ
ХХХХН — адрес запуска программы.
двоичный ASCII ENTER 3. Команда ЕХ действует аналогично
код код (.) предыдущей команде, но по завершении
выполнения программы управление возвращается
ENTER — указывает, в каком коде будет POWER.
внесено изменение (А), (Н), (В), (D). Для перехода в Программа, предполагающая возврат в
другой код надо ввести .В(.) — в скобках указать POWER, должна заканчиваться командой С9
один из символов. Просматривать информацию (RETURN).
можно как в прямом, так и в обратном направлении. 4. Команда RUN осуществляет загрузку и
Для смены направления адресации на обратное исполнение одного или нескольких файлов.
вводят ^, при этом у адреса появится “-“. Выход из АО = RUN (имя файла) для двух файлов
команды DS осуществляется вводом двух точек. АО = RUN (имя файла) для всего диска.
5. Заполнение памяти константой Подсчет контрольной суммы файла осуществляют с
АО = FILL ХХХХ YYYY ZZ Начальный помощью команды CHECK
адрес ХХХХН, конечный адрес YYYYH и АО = CHECK (имя файла)
константа ZZH. В программе POWER имеется команда для
6. Перемещение содержимого памяти выхода в СР/М
осуществляется командой MOVE АО = EXIT
АО = MOVE ХХХХ YYYY ZZZZ Учитывая большой объем программы POWER
ХХХХН —начальный адрес, YYYYH — (15 Кбайт), распечатка кодов программы не
конечный адрес, ZZZZH — новый адрес. приводится.
7. Программа сравнения содержимого Благодаря блочно-модульному построению
памяти СМ. компьютера «ЮТ-88» его возможности можно
АО = СМ ХХХХ YYYY ZZZZ расширять, подключая к нему различные
XXXXH,YYYYH —начальный и конечный периферийные устройства: принтер, дисковод,
адреса первой сравниваемой области памяти, графический дисплей. Покажем, как это делается,
ZZZZH— начальный адрес второй сравниваемой на примере подключения принтера. Широкое
области памяти. распространение получили принтеры с мозаичной
8. Поиск в памяти символов осуществляет головкой типа СМ6325, ЕС-7189, D-100, FX-80 и
команда SEARCH. другие. Все эти печатающие устройства
Эта команда выводит на дисплей номера предназначены для работы с ПЭВМ, оснащенными
найденных ячеек и коды (или символы ASCII), параллельными интерфейсами
находящиеся в этих ячейках. Возможен размер CENTRONICS/ИРПР-М.
искомой строки до 128 символов. Если искомым Данные по этому интерфейсу асинхронно
символам предшествовали знаки вопроса "?" то на выдаются в принтер, пока не будет заполнен его
экран выводятся найденные коды в контексте. входной буфер. Принтер подтверждает прием
АО = SEARCH (начальный адрес) (конечный данных сигналом готовности. Распечатка
адрес) (байт) (байт) осуществляется одновременно с приемом данных
В обычном режиме поиск ведется до тех пор, пока буфер не будет пустым.
шестнадцатеричных кодов.
172
Знакосинтезирование печатаемых знаков передаваемых данных, а порт С — для приема
осуществляется путем включения электромагнитов сигнала готовности принтера.
мозаичной головки, перемещающих Ниже приводится программа, которая
иголки,которые, ударяя через красящую ленту по позволяет выводить на принтер таблицы кодов (см.
бумаге, образуют состоящий из точек знак. приложение 3).
Движение иголок мозаичной головки, перемещение В зависимости от начального и конечного
каретки, на которой головка закреплена, подача адреса выводимых кодов необходимо
бумаги и смена красящей ленты осуществляются откорректировать ячейки программы F491H,
микропроцессором принтера. F492H— младший, старший байты начального
Рассмотрим, как осуществить сопряжение адреса, F494H, F495H— младший, старший байты
компьютера «ЮТ-88» с конкретным, например конечного адреса выводимой таблицы кодов. Затем
наиболее распространенным принтером СМ-6325 запустить программу с адреса F490H.
(D-100). Ограниченный объем книги не позволяет
Для организации интерфейса воспользуемся рассмотреть дальнейшие пути расширения
программируемым параллельным адаптером на компьютера «ЮТ-88». Однако возникающие
БИС КР580ВВ55, которая уже была нами вопросы по изготовлению (фотошаблоны, печатные
применена для реализации программатора. платы, прожиг микросхем), программному
В этом случае порт А КР580ВВ55 используется обеспечению (копирование, описание программ) и
для вывода данных из компьютера в принтер, порт просто ваши замечания и предложения просим
В — для выдачи импульса стробирования байта направлять по адресу: 1 13556. Москва, а/я 75.
ПРИЛОЖЕНИЯ
174
175
176
177
178
179
180
181
182
183
2.КОДЫ ПРОГРАММЫ CH.COM
184
3. ПРОГРАММА ПРИНТЕРА
185
3. СЛОВАРИК ПРОГРАММИСТА Директива — предложение, обычно в форме
приказа, в языках программирования.
(Пояснения к некоторым терминам, встречающимся Дискета — небольшой гибкий пластиковый
в книге) диск с нанесенным на его поверхность тонким
слоем магнитного вещества. Предназначен для
Адрес — число, обозначающее номер ячейки долговременного хранения программ и данных.
памяти с данными или командой. Как правило, Дисковод — механизм, приводящий дискету во
записывается в шестнадцатеричном коде. вращение при считывании или записи информации.
Адресное пространство микропроцессора — Дисплей — устройство для отображения
совокупность адресов внутренних регистров и данных. В первом модуле «ЮТ-88» используется
запоминающих устройств, регистров внешних простейший шестиразрядный семисегментный
устройств (ввода/вывода, памяти). Содержимое алфавитно-цифровой дисплей на светодиодных
регистра адреса микропроцессора достаточно для индикаторах.
обращения к каждому из названных устройств. Загрузчик — программа, размещающая
Объем адресного пространства микропроцессора готовую к выполнению рабочую программу
определяется разрядностью его шины адреса. У непосредственно в ОЗУ пользователя.
микропроцессора КР580ВМ80А она 16-разрядная, ЗУ — запоминающее устройство,
следовательно, адресное пространство составляет фиксирующее информацию таким образом, чтобы
216 ячеек памяти. она могла быть в любой момент воспроизведена.
Адресация — обращение микропроцессора к Внешнее ЗУ — запоминающее устройство,
заданной области памяти или внешнему размещающееся вне микропроцессора.
устройству. Индикатор — устройство для визуального или
Адаптер — устройство для согласования акустического отображения информации.
входных и выходных сигналов разных устройств. Например, симисегментный светодиодный
Чаще всего используется для согласования индикатор, пьезоэлемен i.
устройства ввода/вывода с магнитофоном, Инициализация — установка в начальное
телефоном или линиями связи. (исходное) состояние различных технических
Ассемблер — этот термин употребляется в устройств-счетчиков, регистров, триггеров и др.
двух значениях. В одном случае это символьный Интерпретатор — специальная программа,
язык программирования, каждому оператору которая последовательно преобразует по смыслу
которого соответствует одна операция ЭВМ. В каждый отдельный оператор программы и
другом программа, преобразующая исходную, исполняет его.
написанную на языке Ассемблер, в команды, Интерфейс — система подключения к портам
«понятные» микропроцессору- ввода/вывода микроЭВМ внешних устройств
Алгоритм — последовательность действий, клавиатуры, дисплея, графопостроителя,
которая приводит к решению поставленной задачи. магнитофона, дисковода.
Алгоритмы для ЭВМ удобнее составлять в виде Канал — совокупность технических средств
блок-схемы. для передачи данных от одного устройства к
Байт — единица информации, равная восьми другому.
битам. В микропроцессоре КР580ВМ80А, имеющем Клавиатура — набор клавиш для ручного
8-разрядную шину данных, обработка ведется ввода данных в ЭВМ.
байтами. В 16-разрядных микропроцессорах можно Код — данные, представленные в
обрабатывать сразу два байта. определенном виде.
Бит — минимальная единица измерения Команда — управляющий сигнал,
объема информации. Может принимать только два вызывающий выполнение определенной операции в
значения — «1» или «0». Форма записи —двоичная. исполнительном устройстве.
Драйвер — обслуживающая программа, Арифметическая команда — команда,
обеспечивающая управление данными при вводе и определяющая арифметическую операцию.
выводе. Например, драйвер кассетного Команда арифметического сдвига — команда
магнитофона — это программа записи и чтения сдвига во всех позициях, кроме знаковой.
данных с линейного выхода магнитофона. Команда Ассемблера — команда, управляющая
Данные — информация, представленная в ходом работы программы Ассемблера.
такой форме, которую можно распознать Команда безусловного перехода — команда,
автоматическому устройству или человеку. изменяющая порядок естественной выборки
Декремент — величина, на которую команд.
автоматически уменьшается другая величина.
Дешифратор — преобразователь кода в
управляющие сигналы.
186
Команда ввода/вывода — команда входа ЭВМ к телефонной линии для обмена
микропроцессора, вызывающая выполнение информацией с другими ЭВМ и банками данных.
программы ввода/вывода информации. Монитор — специальная программа, входящая
Логическая команда — машинная команда, в состав системного программного обеспечения
определяющая логическую операцию. микроЭВМ, осуществляющая взаимодействие
Команда логического сдвига — команда сдвига микропроцессора с клавиатурой, дисплеем, ОЗУ.
во всех позициях ячейки. Управляет вводом и исполнением других программ.
Машинная команда — команда, входящая в В директивы МОНИТОРа входит также функция
состав системы команд ЭВМ. отладки, запуска и исполнения программ
Команда останова — машинная команда, пользователя.
вызывающая прекращение выборки и исполнения Мультиплексирование — разбивка одного
команд в программе. канала данных на два или несколько. Для этой цели
Команда перехода — команда, вызывающая обычно используются специальные микросхемы-
изменения в естественной последовательности мультиплексоры.
выборки команд. Накопитель — устройство для записи и
Прерываемая команда — машинная команда, в хранения информации. Может быть выполнен на
ходе исполнения которой допустимо прерывание. базе кассетного магнитофона, гибкого магнитного
Команда процессора — машинная команда, диска (НГМД) и т.д.
определяющая действие микропроцессора. Обращение к памяти — запрос на чтение из
Регистровая команда — машинная команда, памяти, запись в память или поиск в памяти
операнды которой находятся в регистрах заданной информации.
микропроцессора. Объектный код — программа в машинном
Команда сдвига — машинная команда, коде.
вызывающая перемещение всех значений разрядов Оперативное запоминающее устройство
ячейки или части этих значений на заданное (ОЗУ) — устройство, предназначенное для
количество разрядов. кратковременного хранения информации,
Команда условного перехода — машинная работающее как на запись, так и на чтение данных.
команда перехода по одному из указанных адресов Различают два типа микросхем ОЗУ: статическое
в зависимости от условия, заданного в этой же ОЗУ и динамическое ОЗУ. Первые, как правило,
команде. имеют небольшой объем (до 64 Кбайт),
Комментарий — фрагмент программы, информация в них сохраняется все время, пока
предназначенный для восприятия ее человеком. подается напряжение питания. Вторые имеют
При вводе в ЭВМ игнорируется. значительно больший объем памяти (до 1 Мбайта),
Компилятор — программа, переводящая но для сохранения записанной в них информации
программу, написанную на каком-либо языке на специальный вход микросхемы необходимо
программирования, на другой язык. постоянно подавать сигналы регенерации
Константа — постоянная величина. (восстановления) содержимого ОЗУ. При
Контроллер — устройство для управления прекращении их поступления все данные из памяти
внешними устройствами. стираются. Считывание информации из ОЗУ
Контроллер программируемый — занимает доли секунд.
специализированная микроЭВМ, предназначенная Операнд — символы, которые определяют
для решения узкого круга задач. место операции в памяти.
Листинг — вывод данных на печатающие Оператор—символы, которыми закодирована
устройства, распечатанные данные. определенная последовательность выполнения
Магистраль — канал передачи информации, команд.
обеспечивающий обмен ею между устройствами. Операция — последовательность действий
Массив — в программировании: матрица ЭВМ.
элементов одинакового типа. Операционная система — система
МикроЭВМ — вычислительное устройство на программного обеспечения, расширяющая
основе микропроцессора или портативная ЭВМ для возможности ЭВМ, повышающая эффективность
индивидуального использования. использования прикладных программ и
Мини-ЭВМ — ЭВМ массового использования облегчающая работу пользователя.
(персональный компьютер). Отличительные Подпрограмма — вспомогательная программа,
особенности — высокая надежность, невысокая облегчающая и ускоряющая процесс обработки
стоимость, развитое программное обеспечение. данных или работу другой, более сложной
Модем — (модулятор-демодулятор) тональный программы.
— устройство для подключения информационного
187
Переход — передача управления. Сумма контрольная — заложенный в
Прерывание — прекращение выборки и программу определенный набор символов,
исполнения команд выполняемой программы. позволяющий проконтролировать правильность
Может осуществляться как по команде извне, так и ввода программы пользователя. Вычисляется
программным способом. По соответствующему контрольная сумма после ввода программы в ОЗУ.
сигналу можно продолжить выполнение программы Такт — промежуток времени между двумя
с того места, в котором она была прервана. последовательными сигналами синхронизации
Регистр — блок памяти малого объема, работы блоков микропроцессора. Каждая команда
встроенный в микропроцессор, к которому он выполняется за один или несколько тактов. В
адресуется независимо от шины адреса. Емкость некоторых случаях под тактом подразумевают
регистра определяется длиной машинного слова, а промежуток времени между сменой состояний
время доступа к регистру значительно меньше, чем микропроцессора.
к ОЗУ. Тест — программа для проверки
Адресный регистр — устройство, в котором работоспособности ЭВМ в целом и ее отдельных
хранятся данные адреса. узлов.
Базовый регистр — регистр для хранения Транслятор — специальная программа
базовых адресов. преобразования программ на некотором языке в
Индексный регистр — регистр для хранения программу на другом языке с сохранением ее
индекса для адресов. функций.
Регистр команд — устройство для Файл — набор данных.
оперативного хранения текущей выполняемой Флаг—одноразрядный индикатор.
команды. Язык программирования — искусственный
Редактор — специальная программа для язык для представления программ в виде,
составления и корректировки «понятном» ЭВМ. Основные языки персональных
программопользователя с учетом языка компьютеров Бейсик, Фокал, Паскаль, Ада и
программирования и архитектуры ЭВМ. другие.
Репрограммируемое постоянное
запоминающее устройство — микросхема памяти,
предназначенная для долговременного хранения
записанной информации. При необходимости
записанную информацию можно стереть и записать
новую.
Сброс — приведение в исходное состояние.
Слово машинное—-данные, соответствующие
одной ячейке оперативной памяти ЭВМ.
Слово состояния — многоразрядный код,
появляющийся на шине данных микропроцессора в
начале каждого машинного цикла и сообщающий о
состоянии микропроцессора.
Совместимость — свойство одной или
нескольких моделей ЭВМ одинаково исполнять
программы.
Состояние — распределение сигналов
микропроцессора.
Состояние ожидания — в этом состоянии
микропроцессора команды не обрабатываются,
однако разрешенные прерывания могут
происходить.
Состояние прерывания — состояние
микропроцессора от момента прерывания до
момента сброса управляющего сигнала прерывания.
Состояние останова — переход
микропроцессора в состояние, при котором
прекращается автоматическая выборка команд из
памяти и их исполнение.
РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА
Б и р ю к о в С . А. Цифровые устройства на К о р н е й ч у к В . И . , Т а р а с е н к о В . П.
интегральных микросхемах. — М.: Радио и связь, Вычислительные устройства на микросхемах.—
1987. Киев: Техника, 1988.
Б о р и с о в В . Г . , П а р т и н А . С. Введение в Коффрон Дж. Технические средства
цифровую технику.— М.: Радио и связь, 1987. микропроцессорных систем.— М.: Мир, 1983.
Буреев Л.Н., Дудко А.Л., Захаров Майоров В.Г., Гаврилов А . И.
В.Н. Простейшая микроЭВМ. — М.: Практический курс программирования
Энергоатомиздат, 1989. микропроцессорных систем. — М.:
Г и л м о р Ч. Введение в микропроцессорную Машиностроение, 1989.
технику.— М.: Мир, 1984. Мальцева Л. А., Фромберг Э.М.,
Г р и г о р ь е в В . П. Программное обеспечение Ямпольский B.C. Основы цифровой
микропроцессорных систем.— М.: техники.— М.: Радио и связь, 1986.
Энергоатомиздат, 1983. Полупроводниковые БИС запоминающих
Д и м и т р о в а М . , П у н д ж и е в В. 33 схемы с устройств/Под ред. А.Ю. Гордона и Ю.Н. Дьякова.
логическими элементами.— Л.: Энергоатомиздат, — М.: Радио и связь, 1986.
1988. Справочник по схемотехнике для
З е л е н к о Г . , П о п о в С , П а н о в В. и др. радиолюбителя/Под ред. В.П. Боровского. Киев:
Радиолюбителю о микропроцессоре и Техника, 1989.
микроЭВМ//Радио - 1982. - № 9—12; 1983.—№ 2— Тищенко В.Г., Тишенко Г . В.
4; № 6 - 1 2 . МикроЭВМ — своими руками.— Киев: Рад. шк.,
З е л е н к о Г . , П а н о в В . , П о п о в С. 1989.
Электронный квазидиск для персональной ЭВМ// Т о к х е й м Р. Основы цифровой электроники.—
Микропроцессорные средства и системы.—1986. № М.: Мир, 1988.
4. Ф р о л о в В . В. Язык радиосхем.— М.: Радио и
З е л е н с к и й В . А . , Х р о м о й Б . П. Бытовые связь, 1988.
электронные автоматы.— М.: Радио и связь, 1988. Хокинс Г. Цифровая электроника для
Интегральные микросхемы/Под ред. Б. В. начинающих.— М.: Мир, 1986.
Тарабрина. М.: Энергоатомиздат, 1985. Щило В . Л. Популярные цифровые
микросхемы.— М.: Радио и связь, 1987.
ОГЛАВЛЕНИЕ «Электронные кубики»............................................62
Цифровое реле времени...........................................63
Введение...................................................................3 Электронный таймер-секундомер...........................64
Глава 8. Кладовая информации .............................. 69
Часть I. 27 устройств на элементах цифровой Регистры ...................................................................—
электроники .......................................................... 4 Запоминающие устройства .....................................72
Бегущие огни............................................................74
Глава 1. Несколько слов о цифровой Автомат световых эффектов ...................................76
Электронике ............................................................ — Соло на ПЗУ . ...........................................................77
1 + 1 = ? .................................................................... — Музыкальная шкатулка ...........................................79
Логика - основа цифровой электроники................ 8 Глава 9. Информация по заказу . . . ....................82
Три кита цифровой электроники ........................... 9 Программируемая К155РЕ3 ....................................—
Правнучка электронной лампы.............................. 13 Послушный килобит................................................87
Знакомьтесь — ТТЛ................................................ 14 Часть II. МикроЭВМ своими руками ................89
Читаем схемы .......................................................... 15
Глава 2. Практические советы по Глава 10. Первый шаг — микроЭВМ
сборке радиосхем .................................................... 17 минимальной конфигурации «ЮТ-88» ..................—
Оборудование рабочего места ............................... — Структурная схема...................................................91
Монтаж — дело серьезное ..................................... 18 Источники питания .................................................94
Самодельные печатные платы ............................... 19 Электрическая схема ...............................................95
Рекомендации по сборке радиосхем...................... 20 Программное обеспечение .................................... 101
Глава 3. Питание цифровых устройств Управляющая программа
на любой вкус ..........................................................22 микроЭВМ — МОНИТОР..................................... 103
Как выбрать источник питания.............................. 23 Сборка и налаживание микроЭВМ....................... 113
Параметрический стабилизатор напряжения ....... — Если есть не все детали ......................................... 118
Стабилизатор на операционном усилителе........... 24 Библиотечка программ вычисления
Стабилизатор на специализированной микросхеме функций ................................................................. 121
.................................................................................. 27 Глава 11. От индикаторов — к экрану.
Глава 4. Домашняя измерительная лаборатория .. 28 Дисплейный модуль «ЮТ-88» .............................. 129
Логический пробник на транзисторах ................... 29 Электрическая схема дисплейного модуля.......... —
Логический пробник с цифровой индикацией...... 30
Директивы МОНИТОРа ........................................ 142
Генератор одиночного импульса ........................... 32
Частотомер на микросхеме..................................... 33 Изготовление и отладка дисплейного
Импульсный зонд.................................................... 34 Модуля.................................................................... 147
Генератор импульсов.............................................. 35 Глава 12. Модуль динамического ОЗУ
Глава 5. Конструкции занимательные «ЮТ-88» ................................................................. 153
и полезные ............................................................... 37 Электрическая схема ............................................. —
Вызывное устройство ............................................. — Программатор ПЗУ «ЮТ-88» ............................... 158
Электронная сирена ................................................ 38 Глава 13. Программное обеспечение «ЮТ-88» ... 161
Указатели поворотов для велосипеда.................... 39 Операционная система СР/М ................................
Автомодель обретает «голос» ................................ 40 Приложения............................................................ 173
Цветомузыкальная приставка ................................ 41 1. Коды операционной системы
Новогодняя «мигалка»............................................ 42 СР/М-64 .................................................................. —
Электронная «курица»............................................ 43 2. Коды программы СН. СОМ ............................. 183
Пробник для проверки приемника......................... 44 3. Программа принтера ........................................ 184
Устройство, контролирующее питание................. 45 3. Словарь программиста....................................... 185
Глава 6. Считающая электроника .......................... 46 Рекомендуемая литература ................................... 188
Триггер: элемент один, состояний —два .............. —
Типы триггеров ....................................................... 48
Как работают счетчики........................................... 50
Генератор случайного числа .................................. 52
Устройство для проверки реакции ........................ 53
Приставка к будильнику......................................... 55
Глава 7. Кодирование, декодирование
и распределение информации.................................57
Шифраторы и дешифраторы .................................. 58
Переключатели без контактов................................ 59
Учебное издание
ОТ САМОДЕЛОК НА ЛОГИЧЕСКИХ
ЭЛЕМЕНТАХ ДО МИКРОЭВМ
ИБ № 13253