kloker, к сожалению сделать качающуюся частоту тут крайне проблематично, т.к. используемый метод DDS-синтеза съедает при работе 100% вычислительных ресурсов. Вообще особых планов по дальнейшему развитию проекта у меня нет, всё устраивает
c качением понятно, а белый шум? ну ок, нет так нет. это с DMA загрузка МК 100% ? я в код глубоко не вникал еще, все времени не хватает.
автор проекта, я так подозреваю сознательно отказался от DMA при генерации DDS потока в GPIO порт, хотелось бы узнать причины на будущее, неужели c DMA вышло тормознее, чем ASM вкладкой напрямую с массива RAM в GPIO.
Заголовок сообщения: Re: Функциональный генератор на базе STM32F103
Добавлено: Вс авг 25, 2019 21:52:54
Открыл глаза
Зарегистрирован: Вс мар 24, 2013 17:21:28 Сообщений: 63
Рейтинг сообщения:0
kloker, да без DMA вынуждено. Причина проста -каждый семпл не просто берётся из массива и оправляется в цап/порт, а берётся из массива, потом с ним проводится математическая операция, и только потом результат отправляется в порт. Т.е. использовать DMA в данном алгоритме невозможно.
kloker, да без DMA вынуждено. Причина проста -каждый семпл не просто берётся из массива и оправляется в цап/порт, а берётся из массива, потом с ним проводится математическая операция, и только потом результат отправляется в порт. Т.е. использовать DMA в данном алгоритме невозможно.
насколько я понял, матоперация введена для масштабирования синусоиды по частоте, заодно и от джиттера избавились на верхних границах диапазона. а если для тактирования вывода выборок в порт настроить второй таймер, и по его такту писать в порт, тогда можно и через кольцевой режим DMA в порт вливать? похоже и этот вариант вы тоже пробовали. меня интересуют проблемы вывода при таком способе.
Заголовок сообщения: Re: Функциональный генератор на базе STM32F103
Добавлено: Пн авг 26, 2019 02:01:56
Открыл глаза
Зарегистрирован: Вс мар 24, 2013 17:21:28 Сообщений: 63
Рейтинг сообщения:0
kloker, используемый алгоритм синтеза DDS хорош тем, что позволяет линейно генерить любые частоты с минимальным шагом перестройки частоты в единицы миллигерц. Если отказаться от этого способа в пользу тактирования от другого таймера, то генерить произвольную частоту уже не получится, всё будет привязано к сетке тактирования от таймера -чем меньше делитель частоты таймера, тем крупнее шаг при изменении частоты. В общем никакой линейности не получится. Ну и добавочная проблема -тактировать от таймера можно только встроенный в мк ЦАП, которого в bluepill нету.
А если ГКЧ сделать на SI5351? На звуковых частотах не очень прокатит, а для настройки фильтров ПЧ (сотни килогерц-десятки МГц) вполне. Правда, это уже получится помесь микроволновки с пылесосом
Заголовок сообщения: Re: Функциональный генератор на базе STM32F103
Добавлено: Пн авг 26, 2019 12:02:55
Открыл глаза
Зарегистрирован: Вс мар 24, 2013 17:21:28 Сообщений: 63
Рейтинг сообщения:0
Mizetsky, мне кажется для звуковых частот лучше звуковой карты компа ничего не придумать (учитывая широкой выбор готового П.О.). Для настройки фильтров и прочего желателен чистый синус. Я в своё время собрал приборчик NWT-7 , -отличный аппарат, хорошее П.О, доволен как слон. В частности этим же объясняется отсутствие мотивации делать в моём генераторе ГКЧ
К сентябрю будет версия 3.5 В частотометре можно будет вкл/откл делитель на 8. и ещё планирую новый режим - одновибратор. По нажатию кнопки будет генерировать импульс длительностью от одного такта мк (~13,8nS) и длиннее. А пока в отпуск собираюсь..
а до сентября версия 3.5 планируется? к одновибратору можно еще добавить генератор серии импульсов с синхрой через вход МК и от кнопки, для отладки последовательных протоколов, с редактированием семплов и битрейта. длину семпла можно ограничить 24 битами. только 2 выхода понадобится, синхро и данные(до 1 мгц вполне хватит).
А если ГКЧ сделать на SI5351? На звуковых частотах не очень прокатит, а для настройки фильтров ПЧ (сотни килогерц-десятки МГц) вполне. Правда, это уже получится помесь микроволновки с пылесосом
Простейший ГКЧ на AD9850 и Arduino Nano 328 https://radiokot.ru/forum/viewtopic.php ... 0&start=20 в проекте и график АЧХ на компе рисуется. если ГКЧ сделать на SI5351, то для графиков нужен еще и детектор, насколько я понял, который есть в AD9850.
а до сентября версия 3.5 планируется? к одновибратору можно еще добавить генератор серии импульсов с синхрой через вход МК и от кнопки, для отладки последовательных протоколов, с редактированием семплов и битрейта. длину семпла можно ограничить 24 битами. только 2 выхода понадобится, синхро и данные(до 1 мгц вполне хватит).
Уже не уверен что вообще будет. На данный момент написана только поддержка делителя /8 для частотометра. Делитель вкл/отк кнопкой энкодера и отображается его состояние на экране. На этом дело встало, энтузиазм закончился
Есть ли у кого слитый Flash Loader Demonstrator дамп версии 3.4 генератора. Скомпилировал hex в ардуино, прошил Flash Loader Demonstrator, а в ответ только свечение экрана и все. Экран рабочий 100%. Экран был голый переходную плату для него делал сам, а вот сигнал Cs не вывел.
Есть ли у кого слитый Flash Loader Demonstrator дамп версии 3.4 генератора. Скомпилировал hex в ардуино, прошил Flash Loader Demonstrator, а в ответ только свечение экрана и все. Экран рабочий 100%. Экран был голый переходную плату для него делал сам, а вот сигнал Cs не вывел.
"Скомпилировал hex в ардуино", Так оттуда и прошивайте - через эти лоадеры будет Вам народная индейская изба Вот здесь автор выложил всё готовенькое, только свой скетчик подсуньте. #60 http://arduino.ru/forum/proekty/generat ... ino?page=1
Спасибо, DimKra! Залил скетч из ARDUINO IDE через serial port - картинка появилась. На кнопку энкодера реагирует, а на вращение - нет. Или энкодер бракованный, или (как досмотрел) из-за того, что китаец прислал плату на процессоре cks32f103c8t6. Замен сейчас нет. На всякий случай слил дамп Flash Loader Demonstrator. Пере-прошивкой файл проверил.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения