Радио-86РК/Радио 06-90/Преобразователь интерфейса
Данный материал защищён авторскими правами!
Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей. Автор: А. ДОЛГИЙ |
Одно из возможных и наиболее перспективных применений компьютера «Радио-86РК» — домашняя подготовка текстов документов и программ, которые затем должны обрабатываться и исполняться на других, более совершенных компьютерах. К сожалению, «Радио-86РК» записывает данные не на магнитные дискеты, которые могли бы быть прочитаны другим компьютером, а на обычный бытовой кассетный магнитофон. Большинство же профессиональных персональных компьютеров не имеет входа для подключения магнитофона и соответствующих программ-драйверов, декодирующих воспроизводимый сигнал. Однако все они снабжены тем или иным стандартным интерфейсом.
Наиболее распространены последовательный интерфейс RS-232С и аналогичные ему V.24, «Стык С2». Для приема данных через интерфейс в математическом обеспечении большинства компьютеров имеются стандартные программы, которые позволяют записать принятые данные на дискету, вывести их на экран дисплея или на принтер.
Ниже описывается приставка преобразователь интерфейса, которая принимает и декодирует сигналы магнитной записи данных, выполненной по методу «Радио-86РК», и превращает их в сигналы стандартного интерфейса RS-232C.
Напомним основные принципы формирования сигнала для записи данных на ленту и его декодирования в компьютере «Радио-86РК». Этот метод показал достаточно высокую надежность, использован во многих любительских и промышленных компьютерах и стал, посуществу, стандартным.
Каждый байт данных, предназначенных для записи, прежде, всего преобразуется в последовательность единичных и нулевых битов, причем первым передается старший бит данного байта. Никаких интервалов между байтами не делается (время, затрачиваемое на передачу каждого бита, определяет скорость обмена и может изменяться по желанию оператора. Стандартное значение, «зашитое» в МОНИТОРе «Радио-86РК», соответствует скорости около 1100 бит/с). Такой сигнал (рис.1,а) еще нельзя записывать на магнитофон, так как он содержит постоянную составляющую, изменяющуюся в зависимости от передаваемых данных. Например, для серии нулевых байтов она равна уровню логического нуля, для серии байтов 0FFH — уровню логической единицы, а во всех других случаях имеет промежуточные значения. В процессе записи — воспроизведения постоянная составляющая неизбежно будет потеряна, что приведет к трудно устранимым искажениям. Для того чтобы избавиться от постоянной составляющей, этим сигналом модулируют по фазе поднесущую, представляющую собой последовательность прямоугольных импульсов со скважностью 2 («меандр») и периодом повторения, равным времени передачи одного бита (рис.1,б). В результате каждый единичный бит заменяется периодом поднесущей, в котором сначала следует отрицательный, а затем положительный полупериод. Нулевому биту соответствует период обратной полярности. Этот сигнал (рис.1,в) уже не содержит постоянной составляющей, зависящей от передаваемых данных, и может быть с минимальными искажениями записан на магнитную ленту и воспроизведен с нее.
Метод декодирования заключается в следующем. От одного из фронтов сигнала отсчитывается интервал, равный 3/4 времени передачи бита. Если в момент окончания интервала сигнал положительный (то есть его уровень больше некоторого порогового значения), то принятому биту присваивается значение логической единицы, в противном случае — логического нуля. С приходом очередного (после окончания этого интервала) фронта сигнала процедура повторяется. Для правильного декодирования и разделения потока битов на байты требуется начальная синхронизация процесса. С этой целью перед началом каждого блока данных передается серия нулевых битов, а затем заранее оговоренный байт синхронизации (синхробайт). Декодирование начинается с того, что после приема каждого бита последние принятые восемь бит сравниваются с известным значением синхробайта. Как только обнаружено равенство, то есть синхробайт принят, синхронизация считается достигнутой и каждые следующие восемь принятых битов образуют очередной байт данных. В процессе записи — воспроизведения может произойти изменение фазы сигнала на противоположную, поэтому процедура синхронизации предусматривает сравнение принятого кода не только с прямым, но и с инверсным значением синхробайта. Если обнаружена инверсия сигнала, то все принятые данные инвертируются. В «Радио-86РК» используется синхробайт ОЕ6Н (инверсное значение 19Н).
О формате сигналов интерфейса RS-232C рассказывалось в статье Г. Иванова («Радио», 1989, № 4, с. 32—35). Отметим еще одну важную для описываемого преобразователя особенность: порядок передачи битов согласно протоколу RS-232C обратный по сравнению с описанным выше — первым передается младший бит каждого байта.
Принципиальная схема преобразователя приведена на рис.2. Сигнал с линейного выхода магнитофона поступает на вход формирователя DA1, который восстанавливает исходную форму сигнала в виде последовательности прямоугольных импульсов с крутыми фронтами, показанной на рис.1,в. Фронты выделяются элементом «исключающее ИЛИ» DD4.1 (рис.1,г) и запускают ждущий мультивибратор DD5.1, формирующий импульс длительностью 3/4 времени передачи одного бита. Следующий запуск мультивибратора произойдет примерно через 1/4 времени передачи бита, поэтому скважность импульсов, генерируемых мультивибратором, при правильной настройке будет около 4 (рис.1,д). Сопротивления резисторов R11 и R12 выбраны так, что средний ток через микроамперметр РА1 в этом случае равен нулю. Это позволяет по показаниям микроамперметра настроить преобразователь на скорость, с которой записаны данные. При указанных на схеме номиналах R6, R7 и С4 возможна перестройка в пределах от 450 до 1800 бит/с, что примерно соответствует изменению константы записи в компьютере «Радио-86РК» от 10Н до 40Н. Сигнал с выхода DA1 подается также на последовательный вход восьмиразрядного регистра сдвига, построенного на микросхемах DD1 и DD2. Запись очередного бита в регистр происходит в момент окончания импульса на выходе мультивибратора DD5.1. Декодированный сигнал на выходе Q0 микросхемы DD1 показан на рис.1е.
Диоды VD1 — VD16 вместе с инверторами DD3.2, DD3.4, DD3.5, DD3.6 и резисторами R8, R9 образуют дешифратор синхробайта. Высокий логический уровень на нижнем по схеме выводе R9 будет только при коде в регистре сдвига 0Е6Н, а на выводе 4 DD3.2 при коде в регистре сдвига 19Н. Когда переключатель SA1 находится в положении СТОП, на прямых выходах обоих триггеров микросхемы DD6 установлен высокий логический уровень. Такой же уровень через элементы DD4.3 и DD4.4 устанавливается на входе R счетчика DD8.2, запрещая его работу. После того, как переключатель SA1 будет переведен в положение РАБОТА, первое же совпадение кода в регистре с прямым или инверсным значением синхробайта изменит состояние одного из триггеров микросхемы DD6. Триггеры включены так, что после этого они становятся нечувствительными к дальнейшим изменениям кода в регистре. Работа счетчика DD8.2 разрешается низким логическим уровнем на выходе DD4.4. Об обнаружении синхробайта сигнализирует свечение светодиода HL1.
Если обнаружена инверсия синхробайта, то есть сработал триггер DD6.2, то сигнал с его выхода переключит в инверсное состояние выходы микросхемы DD1. Так как на вход микросхемы DD2 в этом случае будет поступать уже проинвертированный сигнал с выхода Q4 DD1, то на выходах DD2 сигналы также станут инверсными.
На вход С счетчика DD8.2 поступают импульсы, формируемые ждущим мультивибратором DD5.2 в моменты окончания импульсов ждущего мультивибратора DD5.1. Этот счетчик, начиная с момента обнаружения синхробайта, подсчитывает принятые биты. После каждого восьмого бита перепад напряжения на его выходе Q4 устанавливает высокий уровень на выходе триггера DD9.1, сигнализируя о том, что в регистре DD1, DD2 находится очередной байт данных.
Передающая часть преобразователя состоит из 12-разрядного регистра сдвига на микросхемах DD11, DD12, DD13 (фактически используются только 9 разрядов), тактового генератора на микросхемах DD7, DD10, DD8.1 и триггера DD9.2, необходимого для временной привязки сигнала готовности, поступающего с выхода DD9.1, к импульсам тактового генератора. Скорость передачи выбирается переключателем SA2. Тактовые импульсы с выхода счетчика DD8.1, выбранного этим переключателем, поступают на входы синхронизации микросхем регистра. Параллельные входы регистра передачи соединены с выходами регистра приема так, чтобы соблюдался правильный порядок передачи битов.
Сигнал готовности переключает регистр передачи в режим параллельной записи. С приходом очередного тактового импульса код из приемного регистра записывается в передающий регистр. Одновременно в младший разряд микросхемы DD13 записывается логический ноль, соответствующий стартовому биту. Так как входы R триггеров DD9.1, DD9.2 соединены через инвертор с выходом QO микросхемы DD13, сигнал готовности сбрасывается и передающий регистр переходит в режим сдвига. Последовательный код снимается с выхода QO микросхемы DD13. Он поступает на выход преобразователя через формирователь на микросхеме DA2.
Все детали преобразователя, кроме переменного резистора R6, микроамперметра РА1, переключателей SA1 и SA2, светодиода HL1, размещены на печатной плате, чертеж которой показан на рис.3. Она рассчитана на установку резисторов МЛТ-0,25, конденсаторов KM (C2 —К53-18). Дроссель L1 — Д-0,1. Частота кварцевого резонатора может отличаться от указанной на схеме, но при этом коммутацией управляющих входов микросхемы DD10 необходимо установить ее коэффициент деления таким, чтобы частота повторения импульсов на входе счетчика DD8.1 была равна 19,2±0,2кГц. Установка коэффициента деления производится с помощью перемычек, соединяющих в "нужном порядке управляющие входы микросхемы DD10 с общим проводом или с источником питания. Для этой цели на плате предусмотрены контактные площадки. Подробнее об установке коэффициента деления микросхемы 564ИЕ15 можно прочитать в статье С. Алексеева («Радио», 1987, № 1, с. 43—45). Если подходящего резонатора нет, то можно отказаться от кварцевой стабилизации частоты, выполнив тактовый генератор по схеме мультивибратора. Однако его придется подстраивать в процессе эксплуатации.
В качестве микроамперметра РА1 использован прибор М248 50-0-50мкА (с нулем посередине шкалы). Можно использовать микроамперметр с чувствительностью, отличающейся от указанной, соответственно изменив сопротивления резисторов R11, R12, но сохранив их отношение равным 3. В крайнем случае можно применить микроамперметр с нулем в начале шкалы, подобрав сопротивление одного из указанных выше резисторов так, чтобы при правильной настройке ток через микроамперметр был равен половине тока полного отклонения.
Переключатели и светодиод могут быть любого типа. Диоды КД522А можно заменить любыми импульсными диодами, а также диодными матрицами КД908А, КД917А и т. п. Микросхемы серии 564 можно заменить аналогичными по функциональному назначению микросхемами серий К561, К176, 164. Микросхему К521 САЗ можно заменить на К554САЗ, учтя различия в нумерации выводов. Входной формирователь можно построить и на операционном усилителе, как это сделано в компьютере «Радио-86РК». В выходном формирователе можно использовать вместо К153УД2 практически любой операционный усилитель. Естественно, замены могут потребовать корректировки печатной платы.
Преобразователь потребляет от источника +12В ток не более 30мА и от источника —12В не более 10мА. Проверка показала, что работоспособность преобразователя сохраняется при снижении питающих напряжений до ±5В. Однако при этом уменьшается амплитуда выходного сигнала. Схема блока питания, разработанного для описываемого преобразователя Ю. Игнатьевым, показана на рис.4. Трансформатор Т1 намотан на сердечнике М2000НМ К20ХЮХ5. Oбмотки I, II содержат по 300 витков провода ПЭВ-2 0,11 мм, обмотки III, IV — по 90 витков провода ПЭВ-2 0,25 мм. Вторичные обмотки от первичных необходимо хорошо изолировать.
Начиная работу с преобразователем интерфейса, необходимо прежде всего настроить его нa ту скорость, с которой выполнена запись данных. Для того на вход преобразователя подают сигнал от магнитофона, движок переменного резистора R6 устанавливают в положение минимального сопротивления, то соответствует приему с максимальной скоростью. Стрелка микроамперметра РА1 будет при том находиться слева от нулевой отметки. Медленно вращая движок резистора, устанавливают стрелку на ноль. Если стрелка сильно колеблется в такт с изменением характера принимаемых данных, то, вращая движок в том же направлении, добиваются максимального отклонения стрелки вправо, а затем ее резкого перехода влево и вновь устанавливают стрелку на ноль. График зависимости показаний микроамперметра от отношения длительности импульса мультивибратора к времени передачи одного бита изображен на рис.5. На нем отмечена точка, соответствующая точной настройке. Зоны колебаний стрелки при неправильной настройке заштрихованы.
Установив скорость приема, выбирают переключателем SA2 скорость передачи данных через интерфейс RS-232C. Требований здесь два:
- во-первых, эта скорость должна быть больше скорости приема данных с магнитофона,
- во-вторых, она должна быть равна скорости приема данных компьютером.
Если эти требования выполнены, можно приступать к вводу данных в компьютер.
Выход преобразователя подключают к контакту RXD интерфейсного разъема. Контакты CTS и RTS, а также DSR и DTR этого разъема необходимо соединить перемычками. На компьютере запускают программу приема данных через интерфейс (читайте статью в следующем номере журнала). Учтите, что многие из этих программ «no-умолчанию» принимают только семиразрядные коды (режим ASCII). Поэтому соответствующими командами (они приводятся в описании программ) необходимо установить режим приема восьмиразрядных кодов (BINARY). Переключатель преобразователя СТОП — РАБОТА должен находиться в положении СТОП, светодиод HL1 при этом не светится. Находят на магнитофонной кассете начало интересующей записи и во время воспроизведения предшествующей ей серии нулевых байтов переводят переключатель в положение РАБОТА. Светодиод HL1 должен зажечься в момент обнаружения синхробайта и светиться в течение всего времени приема. Конец блока данных преобразователь не определяет, поэтому после его окончания во избежание засорения памяти компьютера случайной информацией переведите переключатель в положение СТОП.
Если при вводе данных наблюдаются сбои, то необходимо проверить качество работы тракта записи — воспроизведения магнитофона и формирователя DA1. Подав на преобразователь реальный сигнал, синхронизируют осциллограф в режиме ждущей развертки импульсами с вывода 6 микросхемы DD5 и наблюдают сигнал на входе микросхемы DA1. Осциллограмма должна иметь вид, показанный на рис.6. На том же рисунке показаны импульсы на выходе мультивибратора при правильной установке их длительности. Вероятность сбоя при вводе будет тем меньше, чем шире второй от начала развертки «глаз» осциллограммы как по времени (Т), так и по амплитуде (А). Чаще всего искажения бывают вызваны сильной перегрузкой магнитофона при записи и недостаточной шириной полосы пропускания со стороны низких частот при воспроизведении. Причиной сбоев могут также быть помехи по цепи питания микросхемы К564АГ1 и наводки на ее времязадающие цепи, вызывающие ложные запуски мультивибраторов.
Преобразователь интерфейса испытан с компьютерами «Роботрон-1715», «Нейрон И9.66», ЕС-1840 и др.
А. ДОЛГИЙ, г. Москва.
Отсканировано с журнала Радио № 6 1990 г.
Отредактировано Лесных Ю. 2001 г.