Главная » Статьи » Мои статьи |
Прошивка трансивера Odyssey основана на свободно распространяемом коде fpga_ver4 от Jim Ahlstrom для трансивера N2ADR/HiQSDR. Многие модули были доработаны мной, некоторые я написал самостоятельно, но в любом случае, в соответствии с требованиям лицензии GNU, исходные коды опубликованы и доступны для скачивания без ограничений здесь. Это открывает широкие возможности для развития проекта, кастомизации, добавление новых функций и программной поддержки. Устоявшийся протокол обмена с компьютером N2ADR/HiqSDR был расширен новыми функциями и будет опубликован отдельно. Обратная совместимость выдержана, это означает, что все функции предусмотренные базовым протоколом поддержаны. Исходные коды компилировались в Quartus II 13.1 Web Edition, использовать более старые версии для компиляции не рекомендуется. Перед компиляцией, следует обратить внимание на некоторые основные возможности кастомизации, которые могут заинтересовать пользователя. В файле level_calibration.v 21 level_band <= 255; //1.8M Point of Measurement Здесь можно линеаризировать АЧХ передатчика, рассчитав коэффициенты для различных частот. По умолчанию, все коэффициенты равны 255 - максимальному значению, так как тракт передачи трансивера достаточно линеен и не нуждается в калибровке. В зависимости от параметров используемого усилителя, можно использовать возможность линеаризации. Технология расчета коэффициентов полностью идентична описанной тут, в конце статьи. В файле ethernet.v // Our initial IP address in network order Здесь можно задать IP адрес закрепленный за устройством. **** Информация указанная ниже актуальна только для прошивки версии 1.0.0. В более поздних прошивках все эти параметры можно задавать через SDR-программу или Odyssey Key Master**** В файле Tranciever.v 114 wire pro_clock; // F=102.4kHz profile time T = 512/F Время нарастания/спада несущей при CW манипуляции, расчитывается по формуле : время в секундах равно 512 деленное на частоту в герцах. По умолчанию частота профилирования равна 102.4 кГц что соответствует времени нарастания 0.005 секунд или 5 мс. 115 wire tone_clock; // freq for side-tone = tone_clock / 1000, Ex. 700k clock for 700Hz tone Частота тона самопрослушки в наушниках при CW манипуляции. Заданные килогерцы соответствуют тону в герцах. Нужные частоты следует задавать в настройках стандартного модуля PLL_pro:pro кликнув по его иконке. В файле key_delays.v 32 parameter key_delay_down = 12000; // Tx key delay on key down Здесь можно указать время задержки включения и отпускания антенного реле в микросекундах. Узнать необходимое время можно из документации к реле либо сделав замеры цифровым записывающим осциллографом. В файле transmitter.v 79 ? ( ( tx_tune_phase < 32'd349490381 ) ? (tx_tune_phase - 32'd24466) : (tx_tune_phase + 32'd24466) ) Здесь цифра 24466 означает сдвиг несущей передачи при манипуляции CW в режиме SSB. Рассчитывается как частота в герцах умноженная на 34.95, по умолчанию 800 Гц. В файле sound_codec.v 91 parameter sound_delay = 110; // Delay in msec , 320msec max Здесь можно задать задержку на включение звука в наушниках после окончания передачи или манипуляции CW. Эта задержка необходима, чтобы устранить возможность прослушивания собственного сигнала, задержанного по времени в программе. Значение в миллисекундах, максимальное значение 320 мс.
| |
Просмотров: 2303 | |
Всего комментариев: 0 | |