Специалист/Моделист-Конструктор 87/Описание компьютера: различия между версиями
Panther (обсуждение | вклад) (+ img, формат) |
Panther (обсуждение | вклад) |
||
Строка 122: | Строка 122: | ||
Интерпретатор языка БЕЙСИК загружается в ОЗУ с магнитной ленты (или передается по локальной сети) и занимает адреса 0000 — 1A5FH. БЕЙСИК должен быть записан на магнитной ленте в формате «Мик-ро-80». Это можно сделать с помощью специальной программы — Монитора, которая также загружается с ленты. Однако на первых порах придется обратиться за помощью к тем, у кого уже есть действующий компьютер. Коды БЕЙСИКа и Монитора приведены в таблицах 2 и 3 соответственно. | Интерпретатор языка БЕЙСИК загружается в ОЗУ с магнитной ленты (или передается по локальной сети) и занимает адреса 0000 — 1A5FH. БЕЙСИК должен быть записан на магнитной ленте в формате «Мик-ро-80». Это можно сделать с помощью специальной программы — Монитора, которая также загружается с ленты. Однако на первых порах придется обратиться за помощью к тем, у кого уже есть действующий компьютер. Коды БЕЙСИКа и Монитора приведены в таблицах 2 и 3 соответственно. | ||
БЕЙСИК и Монитор можно также хранить и в ПЗУ, но для этого потребуется дополнительно установить четыре микросхемы К573РФ2 (DD53 — DD56), подключив их параллельно МС DD52 (кроме выводов 20, которые подсоединяются к выводам 10, 11, 12, 7 МС DD51 в соответствующем порядке!. Эти ПЗУ перекрывают адреса: | БЕЙСИК и Монитор можно также хранить и в ПЗУ, но для этого потребуется дополнительно установить четыре микросхемы К573РФ2 (DD53 — DD56), подключив их параллельно МС DD52 (кроме выводов 20, которые подсоединяются к выводам 10, 11, 12, 7 МС DD51 в соответствующем порядке!. Эти ПЗУ перекрывают адреса: С800—CFFFH (DD53), D000—D7FFH (DD54), D800 — DFFF (DD55), E000—F7FFH (DD56) и программируются следующим образом: адресам С800—C82FH соответствует таблица 4, С830—CADFH — таблица 3, CAE0—E53FH — таблица 2. Оставшиеся свободные ячейки (Е540—E7FFH) можно использовать для хранения программ пользователя. | ||
После сброса компьютер ждет ввода программы с магнитной ленты (о чем свидетельствует надпись на экране), и после загрузки программа будет запущена. Для вызова Монитора и БЕЙСИКа из ПЗУ после сброса необходимо последовательно нажать клавиши (STOP | После сброса компьютер ждет ввода программы с магнитной ленты (о чем свидетельствует надпись на экране), и после загрузки программа будет запущена. Для вызова Монитора и БЕЙСИКа из ПЗУ после сброса необходимо последовательно нажать клавиши (STOP) и (ВК). На экране появится сообщение «Монитор!» и мигающая черточка-курсор укажет на то, что ожидается ввод директивы. Для вызова БЕЙСИКа нужно продолжить: (НРФ) (J) (ВК). Экран очищается, выводится ообщение «*BASIC*», и управление передается интерпретатору БЕЙСИКа. | ||
=== Монитор === | === Монитор === | ||
Строка 131: | Строка 131: | ||
Если при наборе директивы допущена ошибка, то набор надо поморить. Отменить директиву при неправильном наборе или прекратить ее действие (в случае команды М) можно, введя символ, не предусмотренный синтаксисом Монитора (например, X). На экране в этом случае появится сообщение «Ошибка», и Монитор вернется в исходное состояние. | Если при наборе директивы допущена ошибка, то набор надо поморить. Отменить директиву при неправильном наборе или прекратить ее действие (в случае команды М) можно, введя символ, не предусмотренный синтаксисом Монитора (например, X). На экране в этом случае появится сообщение «Ошибка», и Монитор вернется в исходное состояние. | ||
Команда D. Формат команды: D<A1 ><А2><ВК> (<А1> — начальный адрес, <А2> — конечный адрес) выводит на экран в виде шестнадцатеричной таблицы содержимое ячеек памяти. "Например, DC 000 C/FF <BK> — выводит таблицу 1. | Команда D. Формат команды: D<A1><А2><ВК> (<А1> — начальный адрес, <А2> — конечный адрес) выводит на экран в виде шестнадцатеричной таблицы содержимое ячеек памяти. "Например, DC 000 C/FF <BK> — выводит таблицу 1. | ||
Команда М. Формат команды М<А1><ВК> | Команда М. Формат команды М<А1><ВК>. Позволяет записать в ОЗУ, начиная с указанного адреса, последовательность вводимых с клавиатурой шестнадцатеричных чисел. | ||
Команда Т. Формат команды Т<А1><А2><АЗ> <ВК>. Пересылает содержимое области памяти А1 — А2 по адресу A3. | Команда Т. Формат команды Т<А1><А2><АЗ> <ВК>. Пересылает содержимое области памяти А1 — А2 по адресу A3. | ||
Строка 169: | Строка 169: | ||
Для получения звуковых эффектов можно использовать подпрограмму в ПЗУ. Следующий фрагмент иллюстрирует это: | Для получения звуковых эффектов можно использовать подпрограмму в ПЗУ. Следующий фрагмент иллюстрирует это: | ||
5 РОКЕ | 5 РОКЕ -28686,10 : REM ДЛИТЕЛЬНОСТЬ | ||
10 FOR A=1 ТО 10 | 10 FOR A=1 ТО 10 | ||
20 РОКЕ | 20 РОКЕ -28687, N*4: REM ПЕРИОД | ||
30 A USR (—16016) : REM ЗВУК | 30 A USR (—16016) : REM ЗВУК | ||
40 | 40 NЕХТ | ||
Для обращения к регистрам КР580ИК55 в БЕЙСИКе необходимо использовать оператор РОКЕ и функцию РЕЕК(Х). Адреса портов А, В и С соответствуют —4, —3, —2. Однако надо учитывать, что на выводе 13 адаптера всегда должен оставаться 0. | Для обращения к регистрам КР580ИК55 в БЕЙСИКе необходимо использовать оператор РОКЕ и функцию РЕЕК(Х). Адреса портов А, В и С соответствуют —4, —3, —2. Однако надо учитывать, что на выводе 13 адаптера всегда должен оставаться 0. |
Версия от 11:36, 8 ноября 2007
Введение
Среди задач, которые предстоит решить в ходе перестройки общеобразовательной и профессиональной школы, первейшей является компьютерный всеобуч, призванный вооружить учащихся навыками использования современной вычислительной техники. Чтобы освоить ЭВМ, необходимо широкое применение вычислительных машин в учебном процессе. Промышленность еще только приступает к массовому выпуску электронно-вычислительной техники. А пока многие энтузиасты строят ЭВМ своими силами.
Есть такой энтузиаст и в СПТУ № 4 города Днепродзержинска. Мастер производственного обучения А. Ф. Волков разработал собственную конструкцию персонального компьютера и назвал его «Специалист».
…На небольшом стеле свободно разместились портативный телевизор «Сапфир», кассетный магнитофон «Весна», компактная клавиатура управления. Вся электронная «начинка» уместилась на одной печатной плате. Компьютер весит меньше полукилограмма. Для сравнения: микроЭВМ «Агат» включает в себя, кроме клавиатуры, еще один блок солидных размеров. Да и стоимость «Специалиста» гораздо ниже, чем у его промышленного собрата.
Роль дисплея в конструкции Волкова способен выполнять практически любой телевизор, в качестве внешней памяти используется бытовой кассетный магнитофон.
Автор пошел по пути максимального упрощения и отказа от дефицитной электронной «начинки». Компьютер Волкова может обходиться даже без печатной платы. Благодаря использованию дешевых и наиболее доступных микросхем серии K155 и КР580 вполне реально в ближайшее время оснастить все школы, ПТУ и техникумы персональными компьютерами.
А каковы возможности «Специалиста»! Несмотря на небольшие размеры и относительную простоту, компьютер умеет многое: решает математические задачи, выполняет инженерные расчеты, неплохо рисует, играет в шахматы и даже музицирует. Обладателю компьютера будет интересно самому составить программы создания оригинальных рисунков для домашней вязки или видеоигр, проверить реакцию игрока в экстремальной ситуации, скажем, дорожного движения, задать ему своеобразный психологический тест на сообразительность. Лучше всего машина знает язык программирования Бейсик, знакомы ей и другие универсальные языки.
«Специалистам» заинтересовались представители Киевского политехнического института, ряда львовских предприятий. Вот мнение, например, ректора Днепропетровского государственного университета академика АН УССР В. Моссаковского:
— Необходимо обязательно и срочно заняться этим компьютером. Это то, что нам нужно. И средним школам, и вузам. Ведь мы готовим преподавателей, которые потом будут обучать школьников компьютерной грамотности.
Сейчас Волков на базе своего компьютера разрабатывает новый тип конструктора. Он предлагает изготовить для юных кибернетиков печатные платы, в которые ребята сами вмонтируют необходимые части логического узла ЭВМ. К изготовленному процессору останется подключить только кассетный магнитофон и малогабаритный телевизор — и вычислительная машина готова.
Технические характеристики
Объем ОЗУ, Кбайт | 32/48 |
Объем ПЗУ, Кбайт | 2—12 |
Тактовая частота процессора, МГц | 2 |
Дисплей монохромный, символов | 64x25 |
Графика, точек | 384X256 |
Плотность записи на магнитной ленте, бит/мм | 32 |
Потребляемая мощность,Вт | 10 |
Программное обеспечение | Бейсик |
Устройство
Одноплатный персональный компьютер «Специалист» состоит из центрального процессора (ЦП), оперативного (ОЗУ) и постоянного (ПЗУ) запоминающих устройств, интерфейса для связи с внешними устройствами и клавиатурой и синхрогенератора (рис. 1). Основные узлы взаимодействуют между собой посредством трех шин: 16-разрядной адреса и 8-разрядных данных и управления. ЦП КР580ИК80А тактируется импульсами частотой 2 МГц, вырабатываемыми синхрогенератором. Память состоит из постоянного запоминающего устройства (ПЗУ) объемом 2—12 Кбайт (К573РФ2) и оперативного запоминающего устройства (ОЗУ) объемом 32/48 Кбайт (К565РУЗ). Распределение памяти показано на рисунке 2.
Для упрощения конструкции интерфейс (КР580ИК55) и внешнее устройство адресуются как ячейки памяти.
Функции синхрогенератора, счетчика регенерации ОЗУ и счетчика сканирования дисплея совмещены в одном устройстве, что позволило значительно упростить схему компьютера и обойтись баз специальных БИС. Цикл регенерации ОЗУ — 128 мкс.
Для отображения информации на экране телевизора используется часть основной памяти ЭВМ. Это также упрощает конструкцию, но и одновременно создает проблему разрешения конфликта процессора и дисплея при обращении к ОЗУ. Когда обращение процессора к ОЗУ отсутствует, контроллер дисплея (совокупность элементов, предназначенных для формирования изображения на экране телевизора) может считывать информацию из ОЗУ каждые 0,5 мкс. При этом в конце цикла, содержащего 2 обращения к ОЗУ по одному и тому же адресу, происходит запись байта информации в регистр сдвига и последующая ее передача на видеовыход.
Если же микропроцессор обращается к ОЗУ (для этого необходим интервал 500 нс), тогда в зависимости от того, в каком цикле ОЗУ это произошло, информация для отображения в случае необходимости задерживается в буферном регистре на 500 нс с последующей выдачей на экран. Это позволяет сделать работу процессора независимой от дисплея.
Для получения полного телевизионного сигнала в формирователе видеосигнала смешиваются импульсы, снимаемые со сдвигового регистра, с импульсами, вырабатываемыми синхроге-нератором. Период строчной синхронизации — 64 мкс, длительность строчного гасящего импульса — 16 мкс, период кадровой развертки — 20 мс, длительность кадрового гасящего импульса — 3584 мкс.
Клавиатура состоит из матрицы нормально разомкнутых контактов. Все функции клавиатуры (сканирование матрицы, защита от дребезга, формирование кодов символов и т. д.) реализованы программно. Также программным способом осуществляется связь с магнитофоном и генерация звукового сигнала. Способ и формат записи на магнитную ленту идентичны ПК «Микро-80» и «Радио-86РК» (см. «Радио» № 9 за 1983 г.).
При использовании дополнительных периферийных БИС серии К580 (МК55, ИК51, ВИ53) возможно подключение таких внешних устройств, как принтер (печатающее устройство), перфоратор, графопостроитель, АЦП, ЦАП и др.
Принципиальная схема компьютера представлена на рисунке 3. Тактовый генератор, стабилизированный кварцем Z1, собран на элементах DD1.1 — DD1.3. Резонансная частота кварца 8 МГц. Импульсы с тактового генератора поступают на вход счетчика синхро-генератора (DD8, DD2 — DD5), на выходах которого вырабатываются сигналы, используемые для адресации экранной области ОЗУ при регенерации изображения. Кроме того, из этих сигналов с помощью логических элементов DD6.1, DD1.4, DD6.3, DD11.1, DD6.2, DD7.1, DD10 выделяются синхронизирующие и гасящие импульсы. Строчный синхроимпульс с выхода микросхемы DD11.1 и кадровый синхроимпульс, снимаемый с выхода DD10, через диоды VD2 и VD3 смешиваются с сигналом изображения, вырабатываемым регистром сдвига DD47 и DD48. Резисторы R5 — R7 определяют размах и форму видеосигнала. Кадровый и строчный гасящий импульсы через элементы DD9.1, DD9.2, DD13, DD1.6 запрещают запись информации в регистры сдвига. Так как на вход 1 микросхемы DD47 подан уровень 0, то с появлением гасящих импульсов после восьми сдвигов информации на выходе регистра DD48 появляется 0, что соответствует черному цвету.
Узел, состоящий из микросхем DD13, DD20.1, DD20.2, служит для получения тактирующих импульсов Ф1 и Ф2 амплитудой 12 В, необходимых для работы микропроцессора, и сигнала RAS, управляющего работой ОЗУ и адресных мультиплексоров DD15 — DD1B. По заданному фронту сигнала RAS происходит запись младших семи бит адреса в адресный регистр микросхем памяти. Одновременно происходит переключение мультиплексоров, и в ОЗУ поступают старшие 7 бит адреса. В зависимости от состояния сигнала D (дисплей) на ОЗУ поступает код адреса либо от процессора, либо со счетчиков.
Арбитр ОЗУ выполнен на триггере DD12.1. Этот узел вырабатывает сигнал D длительностью 500 нс в том случае, если на выводе 19 DD43 (микропроцессора) появляется сигнал SYNC, предваряющий такт обращения процессора к ОЗУ. Если при этом отсутствует сигнал ЧТ (чтение), что неизбежно означает начало цикла записи информации в ОЗУ, на выводе 6 МС DD7.3 вырабатывается сигнал ЗПЗУ (запись ОЗУ), совпадающий во времени с сигналами V1, V2, V3 выборки микросхем ОЗУ. Информация из ОЗУ поступает на шину данных и обратно через шинные формирователи DD49, DD50. Направление передачи определяется сигналом ЧТ.
Узел выборки ОЗУ состоит из дешифратора DD14 и элементов DD11.3, DD19.1. Элементы DD9.3, DD9.4 служат для преобразования адреса при начальном пуске компьютера. Сигнал «сброс» обрабатывается триггером DD12.2. Длительность сигнала, поступающего с выхода триггера на вход «сброс» микропроцессора и интерфейса, кратна периоду кадровой развертки, то есть во много раз больше длительности пяти машинных циклов, что необходимо для надежного сброса микропроцессора. Действие сигнала «сброс» не нарушает регенерацию ОЗУ.
Выборка ПЗУ и интерфейсных микросхем обеспечивается дешифратором DD51. Возможно подключение дополнительно шести микросхем К573РФ2 или КР580ИК55. При этом на каждую микросхему приходится 2 Кбайта адресного пространства.
Интерфейсный адаптер КР580ИК55 (DD44), помимо обслуживания клавиатуры, выработки звуковых сигналов, которые с вывода 6 МС DD45.3 поступают на УЗЧ телевизора, и связи с магнитофоном, обеспечивает работу узла начального пуска.
Формы сигналов на выводах микросхем показаны на временной диаграмме (рис. 4).
Блок питания
Питается компьютер от стабилизатора напряжения (рис. 1) со следующими выходными данными: + 12 В, 0,3 А; + 5 В, 1 А; —5B, 0,01 А. Дроссели L2, L3 намотаны на сердечнике Ш7Х7 из феррита марки 2000НМ, с зазором 0,15 мм и содержат по 40 витков провода ПЭВ 0,4. Обмотка дросселя L1 состоит из 60 витков провода ПЭВ 0,15, намотанного на одном сердечнике с L2.
Можно также использовать любой другой источник постоянного тока с аналогичными данными.
Сборка
Многих самодеятельных конструкторов микропроцессорная техника отпугивает большой трудоемкостью монтажа (особенно печатного). Поэтому микроЭВМ «Специалист» собрана по так называемой технологии стежкового монтажа, что во много раз облегчает и ускоряет сборку компьютера. (Подробнее о технологии стежкового монтажа вы можете прочитать в кн.: Технология ЭВА, оборудование и автоматизация. М., «Высшая школа», 1984.) Заметим, что на монтаж, наладку и окончательную доводку электронного устройства у автора ушло всего три дня, тогда как аналогичная работа на основе печатного монтажа занимает несколько недель.
Стежковый монтаж выполняют с помощью специального приспособления. Выводы элементов соединяют проводом ПЭВТЛК 0,15, который не нужно очищать в местах пайки от изоляции.
На плате, изготовленной из одностороннего фольгированного стеклотекстолита, намечают расположение микросхем, группируя их с учетом числа и длины соединений, а затем вытравливают контактные площадки для припаивания микросхем. Питание подводят по печатным проводникам. Можно также использовать универсальные макетные платы (см. «М-К» № 5 за 1986 г.). Далее около каждой контактной площадки сверлят отверстие 0 0,85—0,9 мм (рис. 2). Из резины толщиной не более 1 мм (резиновый эспандер) изготавливают 4—5 прокладок по размеру платы и собирают в пакет, поверх которого кладут печатную плату фольгой вниз (рис. 3). Инструмент для монтажа изготавливают из иглы 0 0,5 мм от медицинского шприца. Острие иглы затачивают под углом 45°, заусенцы по краям отверстия снимают. Через иглу пропускают провод, прокалывают пакет резиновых прокладок через отверстие в плате, а затем иглу вытаскивают. При этом в резине задерживается петля провода. Чтобы не было обрывов, провод протягивают между соседними отверстиями с небольшим запасом. После прокладки проводов резиновые прокладки поочередно удаляют. Лужение петель выполняют паяльником с жалом, имеющим отверстие в торце или продольный паз (см. «Паяльник снимает припой», с. 45). Температура нагрева жала не должка превышать 350°.
Для устранения помех по питанию на каждые десять МС серии К155 следует установить конденсаторы КМ5 емкостью 0,1 мкФ и на две МС K565 — емкостью 0,1 и 0,2 мкФ по шинам 5 и 12 В соответственно.
Последовательность сборки компьютера. Устанавливают все микросхемы, кроме ОЗУ, ПЗУ и микропроцессора. Убедившись в правильности выполненных соединений и отсутствии коротких замыканий, проверяют работу счетчиков и формирователей. Затем припаивают микропроцессор и микросхемы ОЗУ, соблюдая необходимые меры предосторожности, поскольку эти МС восприимчивы к статическим зарядам. ПЗУ устанавливается на панельке.
Клавиатура
В компьютере применена клавиатура мембранного типа, конструкция которой показана на рисунке 4. Основание клавиатуры изготовлено из фолъгированного стеклотекстолита толщиной 2 мм. На верхней поверхности основания оставшиеся после травления участки фольги образуют продольные полосы контактной матрицы (см. принципиальную схему компьютера). Строки матрицы образуют горизонтальные полоски фольги, нанесенные на стеклопластик толщиной 0,15 мм (лучше использовать для этой цели специальный фольгированный материал толщиной 0,15 мм). Между платами установлена диэлектрическая прокладка толщиной 0,15 мм с отверстиями, расположенными на пересечениях контактных полос Сверху клавиатура закрывается фальшпанепью с изображением клавиш (рис. 5), отпечатанных на контрастной фотобумаге, и подключается к плате процессора с помощью плоского кабеля. В окончательном виде вся конструкция складывается в виде книги.
Наладка
Если клавиатура и телевизор подключены, то после нажатия кнопки «сброс» на экране должно появиться сообщение «Программа!», означающее, что компьютер готов к вводу программы с магнитофона.
После включения магнитофона происходит загрузка программы в ОЗУ, и можно начинать работать с компьютером. Рекомендуется нажать клавишу «сброс» в момент появления звука.
Если скорость магнитной ленты отличается от стандартной, можно подстроить программу чтения с магнитофона путем замены константы чтения (см. «Радио», 4983, № 9). Для этого необходимо нажать клавишу гашения экрана. После появления мигающей черточки — курсора — нажать одновременно клавишу «HP» и клавишу с латинским символом, код которого по КОИ-7 соответствует новой константе чтения (при начальном пуске константа устанавливается равной ЗСН).
Предлагаем упрощенный вариант проверки работоспособности ЭВМ без использования ПЗУ, содержащего тест-программу. На выводы 14 MC DD21 — DD28 через резисторы сопротивлением 2 кОм подают напряжение + 5 В, вместо сигнала НП на выводы 9, 12 MC DD 9.3. DD 9.4 — уровень логического 0, на входы выборки GAS модулей ОЗУ (вывод 15 К565РУЗ) — логическую 1. Подключая по очереди входы GAS каждого из трех модулей памяти к выводу 3 микросхемы. DD19.1, можно увидеть содержимое ячеек памяти на экране дисплея. Идея состоит в следующем: микропроцессор, принимая код 11111111 (FFH) из «пустого» ОЗУ (выборка V1 отключена), выполняет команду RST7 (код FFH). По этой команде в стек заносится код адреса возврата и происходит переход к адресу 38Н. Поскольку и по этому адресу отсутствует ОЗУ, микропроцессор опять считывает код FFH, заносит в стек адрес следующей команды (0039Н) и опять переходит к адресу 38Н и т. д. В результате по всем адресам памяти будет записана последовательность ООН 39Н ООН 39Н… На экране при этом будут видны характерные вертикальные полосы. Светлые места соответствуют записи 1, неисправные микросхемы вызовут мерцание или отсутствие свечения в соответствующих точках экрана.
Программное обеспечение
Компьютер собран. Если все его элементы исправны и смонтированы без ошибок, микроЭВМ готова к работе. Тем не менее, она еще не способна выполнять возложенные на нее функции, пока в компьютер не будет заложена программа, по которой он станет производить определенные действия.
Программный принцип управления с появлением микропроцессоров стал применяться не только в ЭВМ в целом, но и в отдельных элементах компьютеров. Кроме микропроцессора, в современном компьютере используются различные БИС — контроллеры с программируемой структурой, предназначенные для организации ввода-вывода, управления периферийными устройствами и др. В этом случае конструирование микропроцессорного устройства переносится преимущественно в сферу программирования. К примеру, в компьютере «Специалист» работа клавиатуры, обмен данными с магнитофоном, формирование изображения на экране телевизора и др. происходят под управлением специальных программ, без которых компьютер — просто набор элементов.
Часть программ, обеспечивающих работу микроЭВМ и необходимых для ее начального пуска, записаны в ПЗУ. Остальные переписываются с ленты в оперативную память во время работы (при выключении компьютера информация в ОЗУ разрушается).
В минимальном варианте компьютер должен иметь ПЗУ объемом 2 К (DD52 — см. принципиальную схему, «М-К» № 2 за 1987 г.) и ОЗУ — 32 К (DD21 — DD28, DD37 — DD42).
ПЗУ программируется в соответствии с таблицей 1 с помощью специальной приставки к компьютеру — программатора (его описание будет дано позже).
Интерпретатор языка БЕЙСИК загружается в ОЗУ с магнитной ленты (или передается по локальной сети) и занимает адреса 0000 — 1A5FH. БЕЙСИК должен быть записан на магнитной ленте в формате «Мик-ро-80». Это можно сделать с помощью специальной программы — Монитора, которая также загружается с ленты. Однако на первых порах придется обратиться за помощью к тем, у кого уже есть действующий компьютер. Коды БЕЙСИКа и Монитора приведены в таблицах 2 и 3 соответственно.
БЕЙСИК и Монитор можно также хранить и в ПЗУ, но для этого потребуется дополнительно установить четыре микросхемы К573РФ2 (DD53 — DD56), подключив их параллельно МС DD52 (кроме выводов 20, которые подсоединяются к выводам 10, 11, 12, 7 МС DD51 в соответствующем порядке!. Эти ПЗУ перекрывают адреса: С800—CFFFH (DD53), D000—D7FFH (DD54), D800 — DFFF (DD55), E000—F7FFH (DD56) и программируются следующим образом: адресам С800—C82FH соответствует таблица 4, С830—CADFH — таблица 3, CAE0—E53FH — таблица 2. Оставшиеся свободные ячейки (Е540—E7FFH) можно использовать для хранения программ пользователя.
После сброса компьютер ждет ввода программы с магнитной ленты (о чем свидетельствует надпись на экране), и после загрузки программа будет запущена. Для вызова Монитора и БЕЙСИКа из ПЗУ после сброса необходимо последовательно нажать клавиши (STOP) и (ВК). На экране появится сообщение «Монитор!» и мигающая черточка-курсор укажет на то, что ожидается ввод директивы. Для вызова БЕЙСИКа нужно продолжить: (НРФ) (J) (ВК). Экран очищается, выводится ообщение «*BASIC*», и управление передается интерпретатору БЕЙСИКа.
Монитор
Монитор — программа, предоставляющая простые и удобные средства для работы непосредственно в машинных кодах. Команда Монитора задается соответствующим латинским символом и сопровождается в случае необходимости одним или несколькими параметрами, представляющими собой шестнадцатеричные числа. Имя команды и параметры вводятся без разделителей и полностью. Выполнение команды начинается после нажатия клавиши <ВК>.
Если при наборе директивы допущена ошибка, то набор надо поморить. Отменить директиву при неправильном наборе или прекратить ее действие (в случае команды М) можно, введя символ, не предусмотренный синтаксисом Монитора (например, X). На экране в этом случае появится сообщение «Ошибка», и Монитор вернется в исходное состояние.
Команда D. Формат команды: D<A1><А2><ВК> (<А1> — начальный адрес, <А2> — конечный адрес) выводит на экран в виде шестнадцатеричной таблицы содержимое ячеек памяти. "Например, DC 000 C/FF <BK> — выводит таблицу 1.
Команда М. Формат команды М<А1><ВК>. Позволяет записать в ОЗУ, начиная с указанного адреса, последовательность вводимых с клавиатурой шестнадцатеричных чисел.
Команда Т. Формат команды Т<А1><А2><АЗ> <ВК>. Пересылает содержимое области памяти А1 — А2 по адресу A3.
Команда F, Формат команды F<A1><A2XN> <ВК>. Заполняет область памяти А1 — А2 константой N.
Команда С. Формат команды С<А1 ><А2><АЗ> <ВК>. Сравнивает содержимое области памяти А1 — А2 с областью A3.
Команда S. Формат команды S<A1><A2><N> <ВК>. Выводит адреса ячеек памяти в интервале А1— А2, хранящих код N, и одновременно индицирует содержимое трех последовательных ячеек, начиная с найденного адреса.
Команда J. Формат команды J<A1XBK>. Запускает программу с адреса А1. При отсутствии параметра А1 управление передается по адресу 0000Н. Для возврата в Монитор в программе пользователя должна быть команда RET (возврат).
Команда I. Формат команды 1<ВК> или 1<А1> <А2хВК>. Вводит информацию с магнитной ленты. Если даны параметры <А1> и <А2>, то данные будут расположены в указанном интервале, причем первые четыре байта — это начальный и конечный адреса загрузки информационного блока.
Команда О. Формат команды О <А1><А2><ВК>. Выводит на магнитофон содержимое памяти А1 — А2. Пример: 000001 A5F<BK> — копирует на ленту БЕЙСИК.
Команда V. Формат команды V<BK>. Сравнивает запись на ленте с содержимым памяти. Константы записи и чтения хранятся в ячейках 8FFE и 8FFFH и по умолчанию равны 28 и ЗСН.
С ленты программу можно загрузить двумя способами: с помощью команды Монитора «I» или проще — по сбросу. В последнем случае в ОЗУ сохраняется адрес пуска программы и в дальнейшем всегда можно ее вызвать, выполнив следующую операцию: <Сброс> «SТОР»<ПC>,
Бейсик
Интерпретатор языка БЕЙСИК для «Специалиста» является переработанным вариантом программ, составленных на персональных компьютерах «Мик-ро-80» и «Радио — 86РК» (см. «Радио» №8, 1986). Поэтому данные программы подойдут и для «Специалиста», за исключением тех случаев, когда используются следующие операторы, работающие в нашем варианте иначе:
CLS Z — очищает содержимое экрана и устанавливает курсор в начальную позицию: Z=0 — цвет фона прежний, Z=1 — черный фон, Z = 2 — белый фон.
CUR X, Y — устанавливает курсор в указанную позицию (дискретность по вертикали — 1 точка, по горизонтали — 2 точки). 0<Х<189, 0<У<245. DPL X, Y — строит отрезок прямой в относительных координатах —383< X >384, —255<Y<255.
PLOT X, У, Z — выводит на экран точку с координатами 0<X<383, 0<Y<255, Z = 0 — «невидимый» цвет, Z=1 — черный, Z = 2 — белый, Z = 3 — инверсный цвет.
LINE X, Y — строит отрезок прямой линии к точке с координатами 0<Х<383, 0<Y<255.
x = INP (S) — функция, возвращающая своим значением код нажатой клавиши.
Для получения звуковых эффектов можно использовать подпрограмму в ПЗУ. Следующий фрагмент иллюстрирует это:
5 РОКЕ -28686,10 : REM ДЛИТЕЛЬНОСТЬ 10 FOR A=1 ТО 10 20 РОКЕ -28687, N*4: REM ПЕРИОД 30 A USR (—16016) : REM ЗВУК 40 NЕХТ
Для обращения к регистрам КР580ИК55 в БЕЙСИКе необходимо использовать оператор РОКЕ и функцию РЕЕК(Х). Адреса портов А, В и С соответствуют —4, —3, —2. Однако надо учитывать, что на выводе 13 адаптера всегда должен оставаться 0.
Графические операторы используют ячейки памяти 8000С — 800FH. Адресное пространство ОЗУ 8010 — 8CFF доступно программисту. При необходимости область загрузки Монитора тоже может быть занята программами пользователя (8D00 — 8FAFH). В заключение приводим перечень ключевых слов БЕЙСИКа (таблица 7).
ТАБЛИЦА 7
CLS | CONT | INT | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FOR | LIST | ABS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEXT | CLEAR | USR | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DATA | MLOAD | FRE | INPUT | MSAVE | INP | DIM | NEW | POS | READ | TAB( | SQR | CUR | TO | RND | GOTO | SPC( | LOG | RUN | FN | EXP | IF | NOT | COS | RESTORE | STEP | SIN | GOSUB | + | TAN | RETURN | - | AТN | REM | * | PEEK | STOP | / | LEN | DPL | ~ | STR$ | ON | AND | VAL | PLOT | OR | ASC | LINE | > | CHR$ | POKE | = | LEFT$ | < | RIGH$ | DEF | SGN | MID$ |
Программатор ПЗУ
В «М-К» № 5, 6 за этот год были напечатаны коды для программирования ПЗУ (см. таблицу 1). Выполняют эту операцию с помощью специальной приставки к компьютеру — программатора.
В самодельном компьютере удобнее всего использовать репрограммируемые ПЗУ с ультрафиолетовым стиранием, поскольку другие типы ПЗУ либо уступают им по своим эксплуатационным характеристикам, либо программируются только в заводских условиях (так называемые масочные ПЗУ). Да и построить для них программатор намного проще.
Устройство, выполненное в виде приставки к микроЭВМ (см. принципиальную схему), позволяет программировать наиболее популярные микросхемы РПЗУ УФ — К573РФ2 и К573РФ5. Программатор подключается к процессору непосредственно через разъем, без удлинительных проводов. Питание +5 В подается от стабилизатора компьютера.
При программировании микросхем К573РФ2 на вывод 21 подается напряжение +24,5 ±0,2 В, вырабатываемое интегральным стабилизатором К142ЕН2 (DA1), для питания которого нужен дополнительный источник напряжения 30 В (на схеме не показан). Включение стабилизатора осуществляется по программе через интерфейс DD1. Микросхему РПЗУ при программировании устанавливают на панельку.
Для работы с программатором нужны программа Монитор (см. «М-К» N 6 за 1987 г., таблица 3) и программа, коды которой приведены в таблице 5. Информация для записи в ПЗУ помещается в любом месте адресного пространства.
С помощью директивы Монитора J [8010] [С000] [ВК] подготавливают программатор к работе (эту операцию необходимо проделать, чтобы выключить стабилизатор DA1 и тем самым снять напряжение (24,5 В), а затем устанавливают микросхему в панельку.
Для чтения содержимого РПЗУ надо запустить программу адреса 8010Н: J [8010] [А] [ВК], указав адрес [А] блока памяти, куда будет переписана информация из РПЗУ.
Незапрограммированная микросхема должна содержать код FFH во всех ячейках, в чем можно убедиться с помощью программы по адресу 8041Н. Если МС не готова к записи информации, ее надо подвергнуть ультрафиолетовому облучению (можно использовать кварцевую горелку от ламп ДРЛ).
Программа записи в РПЗУ вызывается директивой J [B057] [А] [ВК], где [А] — адрес информационного блока, предназначенного для записи в РПЗУ.
Программирование одной ячейки РПЗУ происходит за 50 мс, то есть 2048 байт (такова емкость микросхем К573РФ2) записываются за 102 с. Затем программа проверяет правильность программирования и управление передается Монитору. В случае неудачи выводится соответствующее сообщение. При необходимости запись повторяют 2—3 раза.
Тест-программа проверки ОЗУ (таблица 6) упрощает поиск неисправных микросхем К565РУЗ и в какой-то степени позволяет убедиться в работоспособности остальных узлов. Программа записывается в РПЗУ, которое устанавливается вместо микросхемы DD52 (см. «М-К» № 2 за 1987 г.). Тест запускается после сброса. Происходит циклическая проверка ОЗУ; при которой каждый цикл сопровождается звуковым сигналом. На неисправную микросхему ОЗУ укажет появление уровня 1 на одном из выходов интерфейса КР580ИК55 (порт А соответствует DD21 — DD28, порт В — DD37 — DD42).
А. ВОЛКОВ,
г. Днепродзержинск, Днепропетровская обл.