Лучшее из возможного!

Размер шрифта:  Aa Aa Aa Aa Aa



Переводчик (декодер) кода Морзе

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

Переводчик декодирует информацию, передаваемую азбукой Морзе и выводит ее на LCD дисплей. Автор разработки – испанский радиолюбитель Melchor Varela EA4FRB http://www.ea4frb.eu/psoc-projects/morse-decoder.

Декодер отличается предельной простотой, малыми габаритами и удобством использования. Достаточно подать на него звуковой сигнал с трансивера и подключить к источнику питания 9…12 В. Амплитуда сигнала должна быть не менее 200 МВ, а частота тона телеграфных посылок около 800 Гц.

При точной настройке на станцию в верхней строке индикатора бегущей строкой отображается принимаемая информация, а в нижней – уровень сигнала и скорость в WPM. Наилучшего качества декодирования телеграфного кода добиваются регулировкой уровня входного сигнала и небольшой подстройкой частоты.

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

Принципиальная схема переводчика кода Морзе

Основа схемы – микроконтроллер CY8C27443 производства компании Cypress MicroSistems. Он относится к классу микроконтроллеров с реконфигурируемой периферией – PSoC (Programmable System on Chip). PSoC имеют на одном кристалле, наряду с процессорным ядром, набор реконфигурируемых аналоговых и цифровых блоков. Цифровые блоки – это счетчики, мультиплексоры, сдвиговые регистры, а аналоговые – операционные усилители, компараторы, аналоговые мультиплексоры.

Таким образом, на одной микросхеме можно собрать устройство, которое содержит микроконтроллер, операционные усилители, активные фильтры, ADC, DAC, PWM, сдвиговые регистры и др. Это может существенно упростить схему, сведя к минимуму внешнюю обвязку.

В данном случае в CY8C27443 реализованы входной усилитель на ОУ, активные фильтры на частоту 800 Гц и аналого-цифровой преобразователь. К выходу «AMP» (вывод 26) можно подключить внешний УНЧ для контроля сигнала после активных фильтров. К выводам SCLK, SDATA и Xres подключается программатор при внутрисхемном программировании контроллера.

Подробнее об алгоритме работы устройства и его внутренней конфигурации можно прочитать в «Application Note AN2124. A PSoC Morse Decoder» от Cypress MicroSistems. Кстати, в принципиальной схеме, приведенной в этом документе, есть ошибка – вывод 3 контроллера не должен ни с чем соединяться.

Исходный код проекта полностью открыт и доступен для внесения различных изменений и дополнений. В частности, первоначально в проекте использовался устаревший тип контроллера CY8C26443, в 2008 г. Markus Hoelzl DG5MDB и Oliver Gebele DG2OG доработали проект для более нового CY8C27443. Я, в свою очередь, в 2012 г. “русифицировал” его. В кавычках, потому что просто добавил русские буквы, которых нет в латинском алфавите, и исправил коды некоторых специальных символов в соответствии со знакогенератором русифицированных индикаторов.

Индикатор самый распространенный – 16 символов в 2 строки, например, WH1602L. Лучше использовать «большой» индикатор с темными символами на светлом фоне. Меньше будут уставать глаза. R2 – регулятор громкости от аудиоплеера.

Декодер я собрал в своем, ставшем уже стандартным, корпусе. Он спаян из фольгированного гетинакса, габариты определяются размерами индикатора. Потребляемый ток зависит от типа подсветки индикатора, обычно он равен 100…150 МА. Поэтому стабилизатор нужно установить на небольшом радиаторе, в качестве которого я использовал фольгу корпуса. Классическое правило теплового режима – если рука терпит, значит устройство будет работать долго и надежно.

Собственно контроллер потребляет около 50 МА. Почему так много – не знаю, в Datasheet указано не более 8 МА, но при тактовой частоте 3 МГц и непонятно, какой конфигурации. В данной схеме тактовая частота 12 МГц и задействовано несколько аналоговых и цифровых блоков.

Печатная плата переводчика азбуки Морзе

Разработано три варианта печатной платы в Sprint Layout под контроллер в узком DIP28 корпусе, в SSOP корпусе и для широкого DIP28 корпуса под переходник SSOP-DIP. Показанная на рисунке плата предназначена для контроллера в SSOP корпусе, ее размеры 65x45 мм, вид со стороны печатных проводников.

PSoC редко используются радиолюбителями, поэтому необходимо рассказать о том, как запрограммировать этот контроллер. В отличие от PIC и AVR далеко не все, даже фирменные программаторы, поддерживают этот класс. Приобретать специальный программатор от Cypress MicroSistems для того, чтобы запрограммировать один контроллер неразумно.

Но выход, как всегда, есть. Инженер из Индии Ajith. S. разработал простейший программатор для контроллеров PSoC. По сути, это буфер между LPT портом и программируемой микросхемой. Алгоритм программирования реализован программно в компьютере. Программа CyP.exe не требует инсталляции, работает без проблем под WIN XP (в других системах не пробовал). Единственная сложность – наличие LPT порта. Но, наверное, тут можно использовать конвертер USB-LPT. Один из возможных вариантов такого конвертера есть в описании моего SDR приемника.

Для программирования нужно подключить контроллер к программатору, который, в свою очередь подключен к LPT порту, включить питание и запустить программу CyP.exe. Она очень простая и интуитивно понятна. Если тип контроллера не определился, нужно проверить Settings. Там можно установить задержку ввода/вывода – обычно хватает 1 мкс, номер LPT порта, способ входа в режим программирования – для CY8C27443 это XRES Reset и номер варианта схемы программатора.

Принципиальная схема программатора PSoC

Автор предлагает 4 варианта схемы программатора, они есть в архиве с программой. У меня не оказалось под рукой нужной буферной микросхемы, поэтому я немного изменил схему под имевшуюся в наличии 74HC373. Чертеж печатной платы в Sprint Layout есть вместе с чертежами плат Морзе-переводчика. Эта схема относится к третьему варианту. Разъем X2 я «выковырял» из старого принтера, это позволило использовать стандартный LPT кабель для подключения к компьютеру.

Если после нажатия «OK» на вкладке «Settings» контроллер все равно не определился, попробуйте изменить напряжение питания. Дело в том, что согласно Datasheet, команды входа в режим программирования разные для напряжения питания в режиме программирования больше и меньше 3,6 В. Что заложено в программе – неизвестно.

Хотя на схеме и указано 5 В, мой контроллер не определялся ни при 3, ни при 5 В. Определился и корректно запрограммировался он только при 3,7 В. Часа два ломал голову, пытаясь понять, почему не программируется… После каждого изменения напряжения питания надо закрыть программу, а затем снова запустить ее. Запрограммированный контроллер нормально работает в схеме Морзе переводчика при напряжении питания 5 В.

В буфер программатора нужно загрузить файл morse.hex из моего русифицированного или, если хотите, оригинального, от авторов, каталога с проектом morse. При программировании следует закрыть все запущенные на компьютере программы, кроме программатора CyP.exe, разумеется. Я пользовался версией 1.7.

Где взять контроллер? В декабре 2012 г. в российских интернет магазинах его цена колебалась от 200 до 600 руб. Плюс почтовые расходы около 300 руб. Минимальная сумма заказа обычно 500...1000 руб. В Китае цена, включая стоимость доставки, около 4$. Правда, заказать придется не менее 10 штук. Зато никаких «менеджер свяжется с вами и выставит счет», сколько на сайте, столько и будет стоить. И есть гарантия возврата денег в случае неполучения (это я пока, к счастью, не проверял).

Возможно, у Вас возник вопрос, зачем делать этот переводчик кода Морзе, если есть программы аналогичного назначения для компьютеров и коммуникаторов. Если отбросить то, что собрать это устройство просто интересно – очень уж схема простая и оригинальная – могу назвать по крайней мере еще две причины.

Во-первых, компьютер не всегда под руками, особенно в полевых и садово-огородных условиях. Да иногда и не хочется включать его при работе в эфире, а если он и используется, то там запущен аппаратный журнал и еще что-нибудь...

Во-вторых, несмотря на отличное качество современных мониторов, пристально вглядываться в текст на экране довольно утомительно для глаз. Это отнюдь не способствует улучшению остроты зрения. Символьные LCD индикаторы в этом отношении гораздо приятнее.

И последнее замечание. Азбука Морзе придумана людьми и для людей. А принципы работы современных компьютеров и человеческого мозга абсолютно разные. Те задачи, которые мгновенно решает человек, например распознавание речи и зрительных образов, с трудом поддаются машине. И наоборот. Поэтому не ждите чудес от этого простого устройства, ошибки при декодировании, конечно же, бывают. Но и возможности для совершенствования алгоритма декодирования тоже есть.


PDF Журнал «Радиолюбитель»
ZIP Платы в Sprint Layout и схемы в Orcad 9.1
ZIP Русифицированный проект ПО c прошивкой для CY8C27443
PDF Таблица декодируемых русских букв и специальных символов
PDF Application Note AN2124. A PSoC Morse Decoder
ZIP Оригинальный проект с ПО от EA4FRB - DG5MDB - DG2OG
ZIP Схема и ПО программатора PSoC от Ajith. S.