Программирование AVR uSDX: микро-трансивер SDR на AVR Fri, October 11 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

uSDX: микро-трансивер SDR на AVR Печать
Добавил(а) microsin   

uSDX это простой экспериментальный (на основе Class-E) трансивер с цифровой обработкой сигнала (SDR), поддерживающий радиосвязь SSB (голос) и CW (телеграф). Он может автономно выполнять радиосвязи класса малой мощности (QRP), или (при использовании вместе с компьютером PC) обрабатывать цифровые радиопротоколы, такие как FT8, JS8, FT4. Трансивер покрывает непрерывный диапазон 80m - 10m в режимах однополосной модуляции LSB/USB с шириной полосы пропускания 2400 Гц. Выходная мощность PEP SSB 5 Вт, поддерживается голосовое управление включением передатчика (Break-In VOX) в голосовых и цифровых режимах работы. Это перевод readme GitHub-проекта [1]. Неизвестные термины и сокращения см. в разделе "Словарик", в конце статьи (также см. [8]).

Тракт передачи SSB полностью реализован цифровым, программным методом. Микроконтроллер ATMEGA328P на приеме оцифровывает входной аудиосигнал, и на передаче синтезирует сигнал SSB путем управления фазой SI5351 PLL (программируются незначительные изменения частоты через интерфейс I2C на скорости 800 килобит/сек) и управлением мощности выходного усилителя (PA) с помощью ШИМ (PWM on the key-shaping circuit). Такой способ синтеза SSB class-E очень эффективен с точки зрения КПД. Дизайн PWM driven class-E позволяет упростить схему трансивера SSB, сделать её недорогой и энергоэффективной (т. е. не нужен сложный, потребляющий много энергии линейный усилитель с радиатором и вентилятором, которые часто встречаются в трансиверах SSB).

В тракте приема большинство преобразований реализовано программно, цифровой обработкой: ATMEGA328P формирует схему двух сигналов, сдвинутых по фазе относительно друг друга на 90 градусов, применена схема фильтра (CW/SSB) и схема аудиоусилителя (на этот раз class-D). Такая реализация значительно упрощает схему uSDX, и получает несколько преимуществ (в сравнении с аналоговой реализацией): больше не требуется процедура выравнивания I/Q из-за необходимого точного 90-градусного фазовращателя Гилберта. Также цифровым способом реализованы настраиваемые фильтры (IF DSP) для режимов CW и SSB. Применяется AGC (AGC) вместе с DSP-обработкой по снижению шума и тремя независимыми встроенными аттенюаторами на аналоговом входе, позволяющими подогнать сигнал под динамический диапазон ADC ATMEGA328P. Динамик управляется сигналом ШИМ и напрямую подключен к ATMEGA328P. Цифровой смеситель с узкой полосой пропускания (2 кГц) и крутыми завалами АЧХ на границах фильтра (-45 dB/декада) в комбинации с передискретизацией и децимацией ADC отвечает за обработку усиления и за подавление зеркального канала в достаточными параметрами для приема как слабых, так и мощных сигналов (что важно для приема сигналов 40m вблизи диапазона широковещания).

Эта экспериментальная разработка была создана в попытке реализовать трансивер с минимальными аппаратными затратами, перемещая сложность обработки в код ПО. Конструкция максимально упрощена, насколько это возможно, с сохранением разумной функциональности. В результате получился недорогой, простой для самостоятельного изготовления QRP SSB трансивер, который реально способен проводить QSO (даже в условиях радиолюбительских соревнований). Однако из-за свой экспериментальной природы некоторые части функционала все еще находятся в разработке, и как следствие ограничены. Вы можете свободно и модифицировать в своих целях скетч [1], и сообщайте автору о своих доработках и вариантах реализации. Также можете посетить тематический форум трансивера QCX-SSB [2].

uSDX common view top

Рис. 1. Общий вид на один из вариантов конструкции.

Список функций:

- Простой, интересный и функциональный QRP SSB HF трансивер, основанный на технологиях DSP и SDR.
- Выходной каскад усилителя мощности SSB, работающий в режиме EER Class-E, выходная мощность PEP SSB при напряжении питания 13.8V ориентировочно 5 Вт.
- Поддержка режимов USB, LSB, CW, экспериментальная поддержка AM, FM.
- Фильтры DSP с полосой пропускания 4000, 2500, 1700, 500, 200, 100, 50 Гц.
- Функции DSP: автоматическая регулировка усиления (AGC), шумопонижение (Noise-reduction, NR), голосовая активация передачи (VOX), аттенюаторы приема (ATT), TX noise gate, управление мощностью передачи, управление громкостью, измеритель уровня принимаемого сигнала (dBm/S-meter).
- Подавление несущей и противоположной полосы SSB на передаче лучше -45dBc, IMD3 (двухтональный сигнал) -33dBc, прием лучше -50dBc.
- Поддержка нескольких диапазонов, непрерывное перекрытие диапазона 160m - 10m (20 kHz .. 99 МГц без ухудшения параметров).
- ПО с открытым исходным кодом, компилируемое в среде Arduino IDE. Идеально подходит для экспериментов, модификаций, добавления новых возможностей. Добавленные возможности можно распространять через Github. Размер кода порядка 2000 строк.
- Программно реализованный VOX, который можно использовать для быстрой активации передачи (QSK и semi-QSK) или помощи для переключения RX/TX в цифровых режимах (не потребуется интерфейс CAT или PTT), управления выходом PTT усилителем мощности с задержкой передачи.
- Простое железо - используется только 4 микросхемы, микроконтроллер и несколько транзисторов и пассивных элементов.
- Режим выходного каскада передатчика EER class-E позволяет обойтись без радиатора, облегчить и упростить конструкцию.
- Тракт передачи SSB полностью цифровой и обрабатывается программно. Оцифровывается микрофонный вход, и синтезируется сигнал SSB путем управления фазой SI5351 PLL (малыми изменениями частоты через интерфейс I2C на повышенной скорости 800 килобит/сек) и путем управления амплитудой PA (с помощью схемы формирования огибающей).
- Тракт приема также полностью цифровой. Оцифровывается сигнал I/Q (комплексные компоненты сигнала), поступающий от цифрового смесителя квадратурного детектора (Quadrature Sampling Detector), программно выполняется 90-градусный сдвиг фазы (преобразование Гилберта), и выполняется подавление противоположной полосы сигнала.
- Три независимых, переключаемых входных аттенюатора принимаемого сигнала (ступени ослабления 0dB, -13dB, -20dB, -33dB, -53dB, -60dB, -73dB).
- Уровень шума MDS приемника: –135 dBm на 28 МГц (на полосе пропускания 200 Гц).
- Селективность приемника по входу: спад -45dB/на декаду +/-2kHz от частоты настройки.
- Динамический диапазон блокирования побочных сигналов: 123dB при отстройке 20 кГц, 78dB при отстройке 2 кГц.
- Декодер телеграфа, Straight/Iambic-A/B keyer.
- VFO A/B + RIT и Split, и соответствующее релейное переключение полосового фильтра, управляемое через I2C.
- Поддержка CAT (подмножество команд TS480), с возможностью потока audio, ключей, отображения текста.
- Опциональное измерение SWR/мощности и управление эффективностью/перегрузкой PA.
- Индикатор напряжения батареи.

Rev. Дата Добавленные функции
latest 2021-10-23 Возможно, не последняя версия (см. обновления на [1]).
R1.02w 2021-08-23 Улучшено качество TX, повышение надежности (в контексте RFI), исправлена проблема VOX, введена опция управления энкодером с одиночной кнопкой, поддержка Arduino Uno/Nano 16 МГц, сообщений CW. Сокращение количества кликов на кнопки, управление полосой TX, исправлен баг OLED, функции дистанционного управления через CAT получили добавление возможности стриминга RX audio. Поддержка CW, TS480 CAT, улучшения качества RX, semi-QSK, PA PTT с задержкой TX, VFO-A/B/RIT, переключение LPF, отключение подсветки для экономии энергии, диапазон 160 метров.
R1.02j 2020-10-10 Интегрирован SDR-приемник, декодер CW, фильтры DSP, AGC, NR, ATT, экспериментальные режимы CW, AM, FM, быстрое меню, сохраняемые настройки, улучшено качество SSB TX. Исправление работы LCD, выбираемый тон CW.
R1.01d 2019-05-05 Теперь Q6 переключается цифровым сигналом (удален C31), это улучшило стабильность и IMD. Улучшена обработка сигнала, качество звука, увеличилась полоса частот, косметические изменения и уменьшение обратной связи по RF, уменьшены RFI измерителя уровня (S-meter), чтение измерителя уровня, самотестирование при включении. Калибровка I/Q приемника, (экспериментально) амплитудные предискажения и калибровка.
R1.00 2019-01-29 Начальный релиз прототипа трансивера SSB.

uSDX schematic

Рис. 2. Принципиальная схема.

Есть довольно много вариантов конструкций uSDX, вот некоторые:

- [uSDX Sandwich] by Manuel, DL2MAN;
- [uSDX Transceiver] by Barbaros Asuroglu, WB2CBA;
- Другие разработки анонсируются на [uSDX Forum], или их можно найти поиском (ключевые слова: uSDX transceiver).

Частично собранные киты и печатные платы можно получить из разных источников:

- Sunil (VU3SUA), магазин https://inkits.in (Индия);
- Ondra (OK1CDJ) и XYL Alexandra (OK1RS), магазин www.hamshop.cz;
- В группах покупателей [uSDX Forum].

Проект uSDX изначально начинался от модификации проекта QCX:

- QCX Mini с дочерней платой uSDX;
- Модификация QCX+ от Mike Dunstan, G8GYW;
- QCX-SSB mod для старого QCX.

Прошивку firmware (hex-файл) и указания по её загрузки см. по ссылке [1]. Используйте фьюзы по умолчанию Arduino Uno (путем выбора burn bootloader) и установите частоту тактов CPU по умолчанию (16 МГц) в случае, когда делаете сборку кода и прошивку из среды Arduino IDE.

[Общее описание работы]

В настоящее время на быстрые кнопки (*L*=влево, *E*=кнопка энкодера, *R*=вправо) назначены следующие функции и пункты меню:

Пункт меню Функция Кнопка
1.1 Volume Уровень громкости (0 .. 16) и включение/выключение питания (при повороте влево) *E* +поворот
1.2 Mode Выбор модуляции (LSB, USB, CW, AM, FM) *R*
1.3 Filter BW Полоса частот по звуку (Full, 300..3000, 300..2400, 300..1800, 500, 200, 100, 50 Гц). Эта опция также управляет полосой SSB TX. *R* двойной клик
1.4 Band Переключение предопределенных диапазонов частот CW/FT8 (80, 60, 40, 30, 20, 17, 15, 12, 10, 6 метров) *E* двойной клик
1.5 Tuning Rate Шаг перестройки 10M, 1M, 0.5M, 100k, 10k, 1k, 0.5k, 100, 10, 1 *E* или длинное нажатие *E*
1.6 VFO Mode Выбор другого VFO, или RX/TX split-VFO (A, B, Split) Двойное длинное нажатие *R*
1.7 RIT  RX при переходе (ON, OFF) Длинное нажатие *R*
1.8 AGC Управление АРУ (ON, OFF)  
1.9 NR Уровень шумопонижения (0 .. 8), load-pass & smooth  
1.10 ATT Аналоговый аттенюатор (0, -13, -20, -33, -40, -53, -60, -73 dB)  
1.11 ATT2 Цифровой аттенюатор в каскаде CIC (0 .. 16) с шагом 6 dB  
1.12 S-meter Тип измерителя уровня сигнала (OFF, dBm, S, S-bar)  
2.1 CW Decoder Разрешить/запретить декодер CW (ON, OFF)  
2.2 CW Tone Тональность телеграфа (CW Filter+Side-tone: 600, 700)  
2.4 Semi QSK Тишина на передаче, активный прием во время знаков телеграфа и интервалов между словами  
2.5 Keyer speed Скорость CW Keyer в Paris-WPM (1 .. 35)  
2.6 Keyer mode Тип keyer (Iambic-A, -B, Straight)  
2.7 Keyer swap Для смены keyer-входов DIH, DAH inputs (ON, OFF)  
2.8 Practice Запрет TX в целях практики (ON, OFF)  
3.1 VOX Активация передатчика голосом (ON, OFF)  
3.2 Noise Gate Порог уровня для SSB TX и VOX (0 .. 255)  
3.3 TX Drive Усиление звука на передаче (0 .. 8) с шагом 6 dB, 8 означает постоянную амплитуду для SSB  
3.4 TX Delay Задержка TX, чтобы реле PA успели выполнить полное переключение (0 .. 255 мс)  
3.5 MOX Monitor on Xmit (во время передачи звук не заглушается)  
4.1 CQ Interval Время ожидания в секундах перед новым сообщением CQ (0 .. 60)  
4.2 CQ Message Текст сообщения CQ, нажатие *L* в меню запустит передачу *L*
8.1 PA Bias min Уровень ШИМ-амплитуды PA (0 .. 255) для представления 0% мощности RF на выходе  
8.2 PA Bias max Уровень ШИМ-амплитуды PA (0 .. 255) для представления 100% мощности RF на выходе  
8.3 Ref freq Реальная частота кварца si5351, используется для калибровки частоты  
8.4 IQ Phase Смещение фазы RX I/Q в градусах (0 .. 180)  
10.1 Backlight Подсветка дисплея (ON, OFF)  
power-up Сброс на заводские настройки Долгое удержание *E*
main Настройка частоты (20 кГц .. 99 МГц) Поворот ручки энкодера
Быстрое меню *L* +поворот
Ввод в меню *L*
RIT RIT back *R*
menu Menu back *R*

Настройка на частоту осуществляется поворотом ручки энкодера. Шаг перестройки можно уменьшить или увеличить короткими или длинными нажатиями на ручку энкодера. Смена диапазона осуществляется двойным нажатием на ручку энкодера. Режим работы изменяется коротким нажатием правой кнопки; двойное нажатие правой кнопки делает уже полосу пропускания фильтра приемника, и полоса сбрасывается каждый раз при смене режима. Громкость меняется поворотом ручки энкодера при её удержании в нажатом состоянии.

В меню можно попасть коротким нажатием на левую кнопку. После этого энкодером можно пролистывать пункты меню. Когда нужно поменять параметр меню, нажатие левой кнопки позволит энкодером менять этот параметр. Нажатие правой кнопки позволяет в любой момент выйти из меню. Быстрый доступ к меню и параметру можно осуществить нажатием левой кнопки при повороте энкодера, когда левая кнопка будет отпущена, Вы сможете немедленно поменять параметр поворотом энкодера.

АРУ (AGC) на приеме по умолчанию разрешено. АРУ увеличивает громкость, когда сигнал слабый, и уменьшает громкость на сильном сигнале. Это полезно для сигналов SSB, но может мешать при работе телеграфом (CW). АРУ можно отключить через меню, это сделает приемник менее шумным, но требует ручной регулировки громкости. Чтобы дополнительно снизить шум, через меню может быть разрешена функция NR (noise-reduction). Чтобы оптимально использовать доступный динамический диапазон, можно применить на входе аттенюатор, что осуществляется изменением параметра ATT. Особенно на частотах 3.5 - 7 МГц атмосферные шумы намного больше, так что можно улучшить параметры приема, если добавить аттенюацию (например 13dB), чтобы шум был еле слышен. Для калибровки частоты трансивера Вы можете настроиться на калиброванный источник сигнала (например WWV на 10 МГц) и по нулевым биениям поменяйте параметр "Ref freq". Альтернативно можно измерить частоту XTal по счетчику и установить этот параметр. Тип измерителя уровня сигнала (dBm, S, S-bar) можно выбрать параметром S-meter. Выбор варианта S-bar отобразит полоску силы сигнала, где каждый тик представит шаг уровня S-point (6dB).

Для голосовой работы на SSB подключите микрофон к джеку, сигнал PTT или встроенная кнопка переведет трансивер в режим передачи. Параметром "TX Drive" можно установить глубину модуляции или уровень управления PA, здесь значение по умолчанию равно 4, что соответствует компрессии для SSB. Установка этого параметра в значение 8 на SSB будет означать, что модуляция SSB передается с постоянной амплитудой (что возможно снизит RFI, но улучшит качество передаваемого звука). Для мониторинга своей собственной модуляции Вы можете временно увеличить параметр MOX. Установка элемента меню "VOX" в состояние ON переводит трансивер в режим активации голосом (Voice-On-Xmit, режим TX включается при детектировании звука на микрофоне). Чувствительность VOX можно отрегулировать параметром меню "VOX threshold". Параметры PA Bias min и max установят рабочий диапазон огибающей сигнала PWM, здесь 0-255 соответствует полному диапазону, что подойдет, если для формирования огибающей используется ключевой режим. Но когда Вы напрямую подаете управляющий сигнал смещения на MOSFET-транзисторы PA (см. примечание 3), задайте сигнал PWM для оптимального рабочего режима MOSFET, соответствующий максимальной необходимой пиковой мощности (на многих конструкциях uSDX хорошо работает вариант установки 0-180).

Для протокола FT8 (и любого другого цифрового режима) двойной клик на ручку энкодера выбирает предварительно запрограммированные диапазоны FT8. Подключите джек головных телефонов к микрофонному джеку звуковой карты PC, и длинным нажатием правой кнопки войдите в режим VOX. Подстройте громкость до минимума и запустите свою любимую программу декодера FT8 (например JTDX). Чувствительность VOX можно установить параметром "VOX threshold".

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

uSDX block scheme

Рис. 3. Блок-схема трансивера uSDX.

Для приема SSB используется каскад сдвига фазы для SDR; это означает, что детектор Tayloe Quadrature Sampling предоставляет отдельные сигналы на выходах I и Q, которые непосредственно поступают на входы ADC микроконтроллера ATMEGA328P для выполнения цифровой обработки. ATMEGA328P оцифровывает сигнал ADC с передискретизацией на частоте 62 кГц, затем эти выборки прореживаются (децимация) для понижения частоты выборок, выполняется фазовый сдвиг для преобразования Гилберта, и результат суммируется для получения подавления противоположной боковой полосы. Далее сигнал проходит через ФНЧ, AGC и функции шумопонижения. На входах ADC применяется фильтрация ФНЧ (срез на частоте 1.5 кГц составляет -40dB/decade), чтобы не допустить попадания на вход ADC частот выше частоты дискретизации. Также на входах ADC установлено смещение 1.1V, что дает дополнительное увеличение чувствительности и расширение динамического диапазона. 10-разрядный ADC и 4-кратной передискретизацией теоретически может быть достигнут динамический диапазон 72dB при полосе частот SSB 2.4 кГц. Режимы LSB/USB переключаются изменением сдвига фазы 90 градусов на PLL-сигналах CLK0/CLK1 SI5351. Три встроенных аттенюатора позволяют оптимально использовать динамический диапазон приемника. Первый аттенюатор RX на ключе MOSFET Q5 отвечает за ослабление 20dB. Второй аттенюатор управляет диапазоном ADC (1.1V или 5V), что выбирается логикой установки аналоговой опоры ADC микроконтроллера (AREF), и это отвечает за ослабление 13dB. Третий аттенюатор подтягивает к земле аналоговый вход микроконтроллера ножкой GPIO, и это задает ослабление 53dB. Комбинированием этих трех аттенюаторов предоставляются диапазоны ослабления 0dB, -13dB, -20dB, -33dB, -53dB, -60dB, -73dB.

Для передачи SSB трансивер uSDX использует отдельный вход ADC для подачи звука. К входному джеку подключается электретный микрофон (с кнопкой PTT), при этом вход DOT работает как входной сигнал PTT, и вход DASH работает как вход для аудиосигнала. Электретный микрофон получает питание 5V через резистор 10 кОм. Блокирующий конденсатор 10nF предотвращает попадание в схему радиопомех. Звук подается на вход ADC2 микроконтроллера ATMEGA328P через развязывающий конденсатор 220nF. Вход ADC2 смещается до уровня 0.55V цепочкой делителя из резисторов 10K для аналогового опорного напряжения 1.1V, что дает с 10-битным ADC чувствительность микрофонного входа около 1mV (1.1V/1024). Этого достаточно для обработки не усиленного голосового сигнала.

uSDX firmware, загруженное в ATMEGA328P, реализует генерацию SSB программным методом. Алгоритм DSP оцифровывает вход ADC2 с частотой 4x4800 выборок в секунду, выполняет преобразование Гилберта, определяет фазу и амплитуду комплексного сигнала. Изменения фазы ограничиваются и преобразуются либо в положительные (для USB), либо в отрицательные (для LSB) фазовые изменения, которые в свою очередь преобразуются во временные изменения частоты, которые посылаются 4800 раз в секунду через 800 кбит/с I2C на SI5351 PLL. Это приводит к фазовым изменениям сигнала несущей SSB, в результате получается сигнал SSB с полосой 2400 Гц, и компоненты противоположной полосы подавляются.

Амплитуда комплексного сигнала управляется напряжением питания PA, и таким образом, огибающей сигала SSB. Ключевая схема управляется сигналом 32 кгц PWM, что дает возможность управлять напряжением PA от 0 до примерно 12V, 256 шагов, получается динамический диапазон SSB-сигнала (log2(256) * 6) = 48dB. C31 был удален, чтобы Q6 работал как цифровой ключ, что повысило эффективность, термостабильность, линейность, увеличило динамический диапазон и снизило время отклика. Хотя информация амплитуды не является важным параметром для разборчивого сигнала SSB, добавление информации амплитуды повышает качество сигнала. Комплексная амплитуда также используется в VOX-режиме, чтобы определять переключение между режимами RX и TX. Вместо использования схемы формирования огибающей можно напрямую управлять смещением транзисторов PA MOSFET (фильтрованным) сигналом PWM. Достоинство этого метода - снижение потерь и упрощение схемы ценой снижения линейности, в результате получается больше компрессии для сигнала SSB (что на самом деле является плюсом).

Уровень IMD зависит от качества системы: линейности (точности) отклика по амплитуде и фазе и точности (динамического диапазона) для этих величин. Особенно важны разрядность DSP и точность в используемых алгоритмах, схема формирования ключа PWM для PA и критичен фазовый отклик PA. Уменьшение (или удаление) C32 снижает IMD ценой добавления к несущей гармоник от PWM.

С помощью модифицированного RTL-SDR, Spektrum-SVmod-v0.19, устройства Sweex 5.0 USB Audio и плейера Audiocity были проведены следующие измерения. Понятно, что такой набор оборудования не совершенен и имеет свои ограничения. Динамический диапазон ограничен RTL-SDR, поскольку это устройство легко перегрузить. Измерения проводились при следующих установках: модуляция USB, без предискажений, двухтональный сигнал 1000 Гц / 1200 Гц, уровень сигнала устанавливается непосредственно перед моментом начала ограничения. Получились результаты:

- Гармоники IMD (два тона; SSB с изменяющейся огибающей) IMD3, IMD5, IMD7: соответственно -33dBc, -36dBc, -39dBc.
- Гармоники IMD (два тона; SSB с постоянной огибающей) IMD3, IMD5, IMD7: соответственно -16dBc, -16dBc, -19dBc.
- Подавление противоположной полосы спектра (два тона): лучше -45dBc.
- Подавление несущей (два тона): лучше -45dBc.
- Широкополосные помехи (два тона): лучше чем -45dBc.
- Полоса 3dB (диапазон): 0 .. 2400 Гц.

uSDX twotone test

Рис. 4. Спектр при тестировании двухтональным сигналом.

Примечания:

1. Варианты прошивки кода:

- Для обновления firmware может использоваться утилита AVRDudess, или командная строка avrdude (avrdude -c avrisp -b 19200 -P /dev/ttyACM0 (или /dev/ttyUSB0) -p m328p -e -U efuse:w:0xFD:m -U hfuse:w:0xD6:m -U lfuse:w:0xFF:m -U flash:w:R1.0x.hex), программатор подключается через коннектор ISP, установленный на плате uSDX. См. инструкцию по использованию Arduino в качестве программатора ISP, если у Вас есть платка Arduino UNO, или инструкции к программатору USBasp, для которого можно использовать утилиту USPasp ExtremeBurner или Khazama AVR. Однако похожим образом можно использовать любой другой программатор ISP, такой как USBtiny или AVRisp mkII. Во время программирования ISP микрофон должен быть отключен, и на uSDX должно быть подано питание. В утилите программирования не нужно выполнять стирание EEPROM, не нужно менять фьюзы (значения по умолчанию для фьюзов E=FD H=D6 L=FF вполне подходят для работы uSDX).

- В случае, когда в ATMEGA328P прошит Arduino bootloader, нет необходимости в применении программатора ISP. Установите ATMEGA328P в сокет платы Arduino, и используйте режим утилиты arduino на скорости 115200.

- Если у Вас используется среда Arduino версии 1.8.10 (или более свежая), то можно загрузить скетч uSDX обычным образом, тогда не нужна утилита программатора и HEX-файл прошивки. Просто убедитесь, что в меню Tools -> Board -> выбран вариант Arduino/Genuino Uno, в меню Tools -> Port -> выбрано /dev/ttyUSB0 или ttyACM0, после чего выберите в меню Sketch -> Upload, когда программируемый чип ATMEGA328P установлен в сокет платы Arduino UNO. Также можно здесь использовать метод "Arduino as ISP": такая выгрузка скетча делается с помощью платы Arduino, в которую загружен скетч ArduinoISP. Тогда выбирайте Tools -> Programmer -> Arduino as ISP, и Sketch -> Upload Using Programmer.

2. Полоса частот SSB может быть дополнительно уменьшена ограничением максимального изменения фазы (установка MAX_DP в половину единичной окружности _UA/2, что эквивалентно 180 градусам). Чувствительность входа Audio может быть уменьшена путем увеличения параметра MIC_ATTEN (с шагом 6dB).

3. Альтернативно MOSFET транзисторы PA могут быть смещены напрямую сигналом огибающей PWM, что в основном делает схему формирования сигнала ключа избыточной. Для этого можно полностью удалить Q6, Q4, R41, R42, C32, C31, при этом выводы коллектор и эмиттер Q6 соединены, и где конденсатор 10nF установлен на IC3A pin3 и затвор Q1-3, и где резистор 10k помещен между выводами затвора и стока Q4, конденсатор 10nF между выводами истока и стока Q4, и где резистор 10k помещен между стоком Q4 и затвором Q1-3.

[Simple, fun and versatile]: usdx.png

[uSDX]: https://github.com/threeme3/usdx

[uSDX Sketch]: usdx.ino

[hex file]: https://github.com/threeme3/usdx/releases

[firmware upload]: https://www.qrp-labs.com/qcx/qcxfirmware.html

[USBasp]: https://sites.google.com/site/g4zfqradio/qrplabs_program_chip_with_USBasp

[USPasp ExtremeBurner]: https://groups.io/g/QRPLabs/topic/57461404#40024

[USBtiny]: https://groups.io/g/QRPLabs/attachment/40315/0/QCX%20Firmware%20Update%20Instructions.pdf

[Arduino as ISP]: https://qrp-labs.com/images/qcx/HowToUpdateTheFirmwareOnTheQCXusingAnArduinoUNOandAVRDUDESS.pdf

[AVRDudess]: http://zakkemble.net/avrdudess

[Arduino]: https://www.arduino.cc/en/main/software#download

[ArduinoISP]: https://raw.githubusercontent.com/adafruit/ArduinoISP/master/ArduinoISP.ino

[digital SSB generation technique]: http://pe1nnz.nl.eu.org/2013/05/direct-ssb-generation-on-pll.html

[QCX]: https://qrp-labs.com/qcx.html

[QRPLabs Forum]: https://groups.io/g/QRPLabs/topic/29572792

[uSDX Forum]: https://groups.io/g/ucx

[AN1981]: https://archive.org/details/bitsavers_signeticsdataManualVolume1Communications_72411912

[AN1981-1994]: http://www.b-kainka.de/Daten/HF/SSB.pdf

[Norcal 2030]: http://www.norcalqrp.org/nc2030.htm

[Hi-Per-Mite]: http://www.4sqrp.com/hipermite.php

[Low Pass Filters]: http://www.gqrp.com/harmonic_filters.pdf

[CMOS driven MOSFET PA]: http://www.ka7oei.com/mpm_class_e.html

[Power MOSFET revolution]: https://archive.org/details/VMOSSiliconixOCR/page/n17

[ATS]: https://groups.yahoo.com/neo/groups/AT_Sprint/files/AT%20Sprint%20/

[Intelligibility]: https://g8jnj.webs.com/speechintelligibility.htm

[ATMEGA328P]: http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf

[HD44780]: https://www.sparkfun.com/datasheets/LCD/HD44780.pdf

[sample]: https://youtu.be/-QfMQulk0eA

[PI4AA June issue]: https://cdn.veron.nl/pi4aa/2019/PI4AA_Uitzending20190607.mp3

[EER Class-E]: https://core.ac.uk/download/pdf/148657773.pdf

[MBF]: https://www.arrl.org/files/file/QEX_Next_Issue/Mar-Apr2017/MBF.pdf

[Polar-transmitter]: https://sigarra.up.pt/fcup/pt/pub_geral.show_file?pi_doc_id=25850

[DJ1MR]: https://www.youtube.com/watch?v=A6ohr98ikeA

[RX3DPK]: https://www.facebook.com/photo.php?fbid=2382353591830446&set=pcb.2382353628497109&type=3&theater

[QRP-BR]: https://groups.io/g/QRP-BR/topic/gerando_ssb_digitalmente/29628623

[phase shift in the SI5351 clocks]: https://www.silabs.com/community/timing/forum.topic.html/difficulty_settingp-LchG

[QCX Assembly instruction]: https://www.qrp-labs.com/images/qcx/assembly_A4_Rev_4b.pdf

[PCB Revision]: https://www.qrp-labs.com/qcx

[QRPLabs Low Pass Filter kit]: https://www.qrp-labs.com/lpfkit.html

[Arduino PWM]: http://interface.khm.de/index.php/lab/interfaces-advanced/arduino-dds-sinewave-generator/

[Serial interface]: https://groups.io/g/QRPLabs/attachment/40706/0/connections.png

[uSDX Sandwich]: https://dl2man.de/

[uSDX Transceiver]: https://antrak.org.tr/author/barbarosasuroglu/

[QCX Mini with uSDX daughterboard]: https://dl2man.de/qcx-mini-usdx-mod/

[QCX+ modification]: https://groups.io/g/ucx/files/G8GYW/Modifying%20the%20QCX+%20for%20SSB%20v3.pdf

[Ghetto-class-E]: https://www.ncqrpp.org/files/qrpp_volume_10.pdf

[Ghetto-class-E-later-publication]: http://www.iw3sgt.it/IW3SGT_PRJ/IW3SGT_AMP_LF/ClassDEF1.pdf

[QCX-SSB mod]: https://github.com/threeme3/usdx/tree/4fc60f5c8d74ba7364cf891e008b920ab5e5c82d

[latest]: https://github.com/threeme3/usdx

[R1.02w]: https://github.com/threeme3/usdx/tree/4fc60f5c8d74ba7364cf891e008b920ab5e5c82d

[R1.02j]: https://github.com/threeme3/usdx/tree/faa4447d61c32efebadd9413b78c4a0094815611

[R1.01d]: https://github.com/threeme3/usdx/tree/1d18d5ff7a503d0d80bca9fe106fd5fce5223542

[R1.00]: https://github.com/threeme3/usdx/tree/0a90ce8afdbbcdafb89cc13261a38b9f99067a66

[Словарик]

ADC Analog-Digital Converter, аналого-цифровой преобразователь (АЦП).

AGC Automatic Gain Control, автоматическая регулировка усиления (АРУ).

ATMEGA328P микроконтроллер AVR фирмы MicroChip (ранее Atmel).

ATT attenuator, ослабление входного сигнала.

CAT специализированный интерфейс управления радиолюбительским оборудованием.

Class-D, EER Class-E режимы работы усилителя. Класс D обозначает работу выходного каскада в ключевом режиме. Класс E это однотактный выходной каскад, также работающий в ключевом режиме.

CW constant wave, передача телеграфом.

DSP Digital Signal Processing, цифровая обработка сигнала.

FT4, FT8 цифровые коммуникационные протоколы, см. [6].

I/Q In-phase/Quadrature, синфазная и квадратурные составляющие сигнала, см. [3].

IMD InterModulation Distortion, интермодуляционные искажения сигнала.

JS8 режим любительского радиообмена, основанный на FT8 [7].

LPF Low Pass Filter, ФНЧ.

MDS Minimum Discernible Signal, минимально различимый сигнал.

NR Noise Reduction, шумопонижение.

QRP радиосвязь на пониженной мощности.

QSO Обозначение сеанса радиосвязи. Из Википедии: выражение из международного Q-кода, принятого в служебной и любительской радиосвязи. Официальное значение: «Я могу связаться с (такой-то станцией).

PA Power Amplifier, усилитель мощности.

PEP Peak Envelope Power, пиковая мощность огибающей.

PLL Phase Locked Loop, петля фазовой автоподстройки частоты (ФАПЧ).

PTT Push-to-talk, дословно "Нажми, чтобы говорить" — полудуплексный стандарт голосовой связи с двусторонним радиоинтерфейсом. Обычно аббревиатурой PTT обозначают сигнал интерфейса управления передатчиком, который управляет переходом трансивера с приема на передачу и обратно.

PWM Pulse Width Modulation, широтно-импульсная модуляция (ШИМ).

RFI radio frequency interference, радиопомехи.

RIT функция точной настройки на частоту [8].

SDR Software-Defined Radio, радиоприемник, тракт которого синтезирован программно.

SI5351 микросхема синтезатора частот [4].

SSB Single-Side Band, однополосная модуляция.

SWR Stand-Wave Ratio, коэффициент стоячей волны (КСВ).

VFO variable frequency oscillator, перестраиваемый генератор, генератор плавного диапазона (ГПД).

VOX Voice-triggered Xmit, активация режима передачи голосом.

WWV радиостанция, вещающая на эталонных, заранее известных частотах 2.5, 5, 10, 15 и 20 МГц [9].

[Ссылки]

1. uSDX micro Software Defined Transceiver site:github.com.
2. QCX-SSB: SSB with your QCX transceiver site:groups.io.
3. Синфазная и квадратурная составляющие сигнала site:wikipedia.org.
4. Si5351: программируемый генератор на любую частоту.
5. Что такое децибел?
6. The FT4 and FT8 Communication Protocols site:princeton.edu.
7. JS8Call (JS8) amateur radio QSO communication mode site:sigidwiki.com.
8. Definition of letters used for short wave radio transceiver equipment site:ailunce.com.
9. Radio Station WWV site:nist.gov.

 

Комментарии  

 
+1 #1 Вячеслав Мезенцев 03.10.2023 16:37
Это просто песня. Искал что-то подобное для экспериментов. Спасибо за перевод, а код надо бы в порядок привести. Смотреть страшно. Займусь на досуге.
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Top of Page