Рабочий вариант скетча AFP-FSK модема.

Рабочий вариант скетча AFP-FSK модема.

Инструкция по «кнопкам Морзе»:

Нажатие Нижняя кнопка Верхняя кнопка
[1] Индикация частоты настройки (3.579), режим приёма.
-1 kHz +1 kHz
-10 kHz +10 kHz
● ▬ -100 kHz +100 kHz
● ● ▬ Сканирование вниз по частоте. Сканирование вверх по частоте.
● ● ● LSB USB
[2] Индикация каналов (CH.01), режим приёма.
Предыдущий канал. Следующий канал.
-10 каналов +10 каналов
● ▬ К каналу CH.00 К каналу CH.99
● ● ▬ Сканирование вниз по каналам. Сканирование вверх по каналам.
[3] Индикация напряжения батареи (U12.5), режим приёма.
-0.1 V +0.1 V
-1.0 V +1.0 V
● ● Считать выставленное напряжение верным (калибровка).
[4] Телеграфный режим.
Тон -10 Hz. Тон +10 Hz.
Тон -100 Hz. Тон +100 Hz.
● ▬ Тон 300 Hz. Тон 2000 Hz.
● ● Запомнить тон самоконтроля.
[5] Контроль КСВ (S1.23) режима настройки передатчика.
Показать «Reflect Points» Показать «Forward Points»
Вернуться к отображению КСВ.
[6] Контроль мощности (P2.34) режима настройки передатчика.
-1 Point +1 Point
-10 Points +10 Points
● ▬ Минимальная мощность. Максимальная мощность.
● ● ● Мощность отражённой волны. Мощность падающей волны.
[7] Управление яркостью индикатора (br. 4).
● or ▬ Уменьшить яркость индикатора. Увеличить яркость индикатора.
● ● Запомнить текущее значение яркости индикатора.
[8] Калибровка частоты модуля Si5351a через подбор коэффициента.
-1 point. +1 point.
-10 points. +10 points.
● ▬ -100 points. +100 points.
● ● ▬ -500 points. +500 points.
● ● Запомнить текущее значение калибровочного коэффициента.
[9] Задание нагрузочной ёмкости кварца в модуле Si5351a.
● or ▬ -2 pF (ряд 6, 8, 10 pF). +2 pF.
● ● Запомнить текущее значение нагрузочной ёмкости.
[10] Уход из сетки 1 kHz в режиме приёма.
-1 Hz +1 Hz
-10 Hz +10 Hz
● ▬ -100 Hz +100 Hz
● ● ▬ -500 Hz +500 Hz
● ● ● LSB USB

Функциональная клавиша понимает такие нажатия:

Нажатие Действие
[1-3] Основное меню.
[1] «Индикация частоты настройки» ⇒
[2] «Индикация каналов» ⇒
[3] «Индикация напряжения батареи» ⇒ [1]
[4-10] Пять самостоятельных сервис-меню. Вызываются из основного.
● ● [4] Переключение в режим телеграфа.
● ▬ [5] Режим настройки, SWR-meter ⇒
[6] Режим настройки, управление мощностью ⇒ [5]
● ● ▬ [7] Управление яркостью экрана.
● ● ● ▬ [8] Калибровка частоты модуля Si5351 ⇒
[9] Выбор ёмкости нагрузки кварца модуля Si5351 ⇒ [8]
● ● ● [10] Задание опорной частоты вне сетки 1 kHz.
Нажатия унифицированного назначения.
Переход между элементами сервис-меню, если есть.
Выход из любого сервис-меню в основное.

Верхняя кнопка функциональной клавиши не является полноценной, со всякими там антидребезгами контактов, и прочим. Поэтому у неё очень простая жизнь:

Нажатие Действие
[1-3] Основное меню.
любое Включить или отключить индикатор (по кругу).
[4-6] Режим телеграфа, SWR-метра и задатчика мощности.
любое Формирование эфирной посылки при нажатии.

Третья клавиша пускай отвечает за регулировку усиления в динамике. Поскольку имеются три самостоятельных режима (приём, телеграф с тоном самоконтроля, передача «цифры», которую тоже неплохо бы озвучить), для каждого из режимов выставляется собственный уровень звука.

Нажатие Нижняя кнопка Верхняя кнопка
-1 dB громкости. +1 dB громкости.
-10 dB громкости. +10 dB громкости.
● ▬ 0 dB - минимальная громкость. +79 dB - максимальная громкость.
● ● ▬ Аппаратное отключение. Включить звук.
● ● Запомнить текущее значение громкости для данного режима.

В целом автор старался назначить кнопкам нажатие тем проще, чем чаще в нём возникает необходимость. Но всё это можно переназначить в скетче каким-то иным образом, ибо несложно.

Скетч с «кнопками Морзе»: 1540044001.zip