Описание
компьютера Радио-86РК
|
Журнал
РАДИО
|
ПРОГРАММА “ МОРЗЕ-ТРЕНАЖЕР”
Эта программа разработана для радиолюбительского компьютера “Радио-86РК” и предназначена для обучения радиотелеграфистов приему на слух. Она позволяет автоматически составлять тренировочные тексты из различных наборов цифр, букв латинского и русского алфавитов, специальных знаков. Тексты со скоростью от 25 до 150 знаков в минуту воспроизводит в звуке динамическая головка компьютера. Для работы с программой не требуется каких-либо дополнительных устройств или переделки компьютера. Все функции тренажера реализованы программно.
Программа состоит из двух частей основной на языке Бейсик и подпрограммы в машинных кодах. Основная программа поддерживает диалог с пользователем, организует введение и составление тренировочных текстов, выбор режимов работы. Использование языка Бейсик для поддержания интерфейса с пользователем дает возможность гибко изменять порядок диалога и при необходимости дополнять его новыми возможностями.
Наиболее критичный ко времени исполнения модуль генерации кода Морзе составлен на ассемблере и транслирован в машинные коды. Это позволило обеспечить широкий выбор скорости генерации кода Морзе и точное соотношение длительностей посылок (точек, тире, пауз). Текст подпрограммы генерации кода Морзе указан в табл.1. Входные параметры подпрограммы определяются символическими переменными СКОР и СИМВОЛ, точка входа - меткой МОРЗЕ. Перед обращением к подпрограмме МОРЗЕ в ячейку с адресом СКОР, заносится значение скорости передачи кода Морзе, а в ячейку СИМВОЛ - код воспроизводимого символа из таблицы КОИ-7.
Подпрограмма МОРЗЕ интерпретирует символы, коды которых находятся в интервале 44—127 таблицы КОИ-7, и пробел (код 32), воспроизводимый, как пауза между словами. Морзе-код символа представляет собой один байт. Составляющие байт нули и единицы кодируют разные по длительности посылки - точки и тире. При записи Морзе-кода последняя посылка отображается младшим битом D0, предпоследняя D1 и т.д. Так как Морзе-коды символов имеют различное число посылок, в байт записывают дополнительный, “стартовый” бит, после которого следуют, биты посылок. Например, символ “а” (•- ) отображается байтом 00000101В или 05Н; специальный символ “ВК” (--• • •—*—) байтом 11000101В или С5Н. При интерпретации кода Морзе соответствующий ему байт сдвигается влево оператором RLC до появления в признаке переноса стартового бита. Последующие за ним биты интерпретируются звуковыми посылками. Из Морзе-кодов составлена таблица, первый элемент которой размещается в памяти по адресу ТАБЛ.
Машинные коды подпрограммы встраивают в свободную область интерпретатора Бейсика, для чего подпрограмма транслирована с адреса 19ЕНН. Коды подпрограммы представлены в табл.2. Подпрограмма загружается в память по директиве I монитора после загрузки интерпретатора Бейсика. Целесообразно вывести на ленту версию интерпретатора, включающую подпрограмму МОРЗЕ.
Текст основной программы показан в табл.3. При выполнении программа занимает около 5,5 Кбайт ОЗУ и может быть использована на компьютерах с объемом ОЗУ 16 Кб.
Программа построена по модульному принципу и состоит из головной части (стр. 10-820) и подпрограмм (стр. 1000 - 8730). Головная часть содержит начальное определение переменных (стр. 100-220) и операторы управления работой программы в режиме меню (стр. 500—-820). Подпрограммы реализуют вывод вспомогательной информации на дисплей (стр. 2000, 2100, 6000), составление тренировочных текстов с помощью датчика псевдослучайных чисел (стр. 3000, 7000, 8100— 8500), воспроизведение текстов кодом Морзе (стр. 5000—5500), организуют введение необходимых для работы данных (стр. 8000, 8600, 8700).
Работа с программой построена в режиме диалога. После запуска программы на выполнение на экране дисплея появляется меню:
- МОРЗЕ — ТРЕНАЖЕР СКОРОСТЬ 60 ЗНАКОВ/МИН ОСНОВНОЕ МЕНЮ:
По ответу 1 воспроизводится код Морзе для полного набора символов. Ответ 2 позволяет непосредственно воспроизводить коды, набирая знаки на клавиатуре. По ответу 3 с клавиатуры вводят текст, который затем воспроизводится как тренировочный. Размер вводимого текста - не более 250 символов. Введение текста построчное, заканчивают его символом пробела в первой позиции строки.
По ответу 4 на экране появляется меню для выбора набора знаков и составления тренировочного текста:
НАБОРЫ ЗНАКОВ:
Ответы определяют наборы знаков, из которых с помощью генератора псевдослучайных чисел затем составляют тренировочные тексты. Последний используют при необходимости составить текст из оригинального набора, например из специальных знаков или отдельно изучаемых букв.
По ответу 5 на экране будет распечатан находящийся в памяти текст, например:
ТРЕНИРОВОЧНЫЙ ТЕКСТ:Ответы 6 и 7 позволяют воспроизвести кодом Морзе текст, выводя или не выводя его на экран.
По ответу 8 можно задать скорость воспроизведения кода Морзе в пределах от 25 до 150 знаков в минуту. Прием сигналов на слух на большей скорости затруднен из-за неудовлетворительного качества звукового сигнала компьютера, имеющего характерный “рваный” тон. На относительно невысокой скорости влияние такого гона незаметно. Однако подпрограмма генерации кода Морзе позволяет манипулировать внешний звуковой генератор с большими скоростями. Для этого необходимо к одному из разрядов порта D14 подключить через буферный элемент звуковой генератор.
Программу в этом случае необходимо доработать. В основной программе операторы начального определения переменных (стр. 100 - 220) дополняют операторами инициализации порта D14. В подпрограмме ЗВУК выдачу звукового сигнала заменяют на команды установки и сброса 1 на управляемом разряде D14, обращение к подпрограмме ЗВОНОК заменяют на обращение к подпрограмме ПАУЗА.
Г. ИВАНОВ
г. Химки Московской обл.
Описание
компьютера Радио-86РК
|
Журнал
РАДИО
|