Play Vakabular - Horus

Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить чёто такое и в конце концом сделал самостоятельно на AD9833. Мне понравились возможности AD9833 и я решил поделиться проектом. Он позволяет синтезировать частоты от 0,1 герца до 2,5 МГц, что для моих работ более чем достаточно.

Есть возможность выбора дискретности изменения шага частоты от 0,1 герца, до 999 герц. Также есть возможность ввода значений частоты в килогерцах, что ускоряет оперативность задания новой частоты. Регулируется уровень сигнала на выходе, а также возможность получение меандра (два вида). Все заданные параметры запоминаются в EEPROM микроконтроллера, что удобно для последующего использования, при отключении питания. Встроена подсказка, помощь в работе, на трех языках, английский, украинский, и русский.

Управление Синтезатором часты, осуществляется через энкодер, что достаточно удобно. Меню работы представляет следующие возможности:

Выбор формы выходного сигнала возможность выбрать из 4 вариантов: синусоида, треугольник, меандр и меандр с частотой деленной на 2.

Задание дискретности набора частоты. Проблема заключается в том, что предусмотрено задание, точности частоты с шагом 0,1 Гц. Но это может стать неудобным если например надо задавать, например для тестирования частоты 10-20-30… Гц, это будет неудобно при шаге в 0,1 Гц. Для этого и предназначено это меню. Выставив например шаг 10,0 Гц можно легко одним щелчком энкодера устанавливать требуемую частоту.

Для быстрой настройки частоты выше 1кГц предназначено следующее меню. Здесь набор частоты идет с дискретностью 1кГц.

Плавное задание частоты, с заданной дискретностью в следующем разделе. Результирующее значение частоты показывается вверху дисплея.

Амплитуду синусоиды и треугольного сигнала можно изменять от 0 до 100%, это приблизительно до 3 вольт. Амплитуду меандра менять нельзя, она всегда будет 100%.

Для подсказок оператору о выполнении необходимых действий служит меню помощи. Здесь можно выбрать подсказки из трех языков, Английский, Украинский, Русский, есть также возможно отключить подсказки.

Теперь перейдем к принципиальной схеме функционального генератора. Схему в формате pdf, можно скачать внизу страницы.

Собирал схем из того, что было под рукой, AD9833 -приобрел в виде модуля в интернет магазине FLATTON, рекомендую. Микроконтроллер PIC18F26K40, OLED дисплей RET012864E. Энкодер можно любой с нормальным кодирование, (если будут код Грея) то надо будут немного подправить программу. Кнопка энкодера, используется для переключения функция – параметр. Для регулировки уровня сигнала использовал MCP41010 (10 кОм). Для усиления 1:4 операционник MCP601T, у него полоса до 2,8 МГц, что вполне подойдет для диапазона звуковых частот. Сигнал синуса и треугольника формируется на выходе синтезатора с уровнем 0,6 вольта и для удобство было применен такой механизм регулировки амплитуды, цифровой потенциометр + усилитель.

Меандр берется напрямую с выхода DDC, так как его амплитуда равна напряжению питания, он в усилении не нуждается и для уменьшения искажений было принято его не пускать через усилитель. Коммутатор был выбран (потому, что был в наличии) HEF4066B.

На этом все особенности генератора и заканчиваются.

Собрал генератор на макетной плате, но работа AD9833  мне понтравилась, поэтому планирую в ближайшем будущем сделать для него печатную плату и корпус.

Прошивка для микроконтроллера можно скачать внизу страницы.


Демо видео работы генератора сигналов.


Файлы для загрузки:


Дополнения!!!

Для разработчиков светомузыкальных систем добавлена функция выбора частоты по нотам:

Файлы для загрузки:

Исправлены подсказки.

Исправлены некоторые графические погрешности


Подготовка печатной платы к изготовлению…


Это может быть интересно


  • HVLD модуль на примере PIC24FJ128GA204HVLD модуль на примере PIC24FJ128GA204
    HVLD модуль представляет собой простое устройство, для контроля напряжения питания микроконтроллера или внешнего напряжения (через делитель). Его задача при “выходе” напряжения за заданные пределы сформировать сообщение микроконтроллеру, что необходимо выполнить …
  • Цифровой спидометр для автомобиляЦифровой спидометр для автомобиля
     Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например,  для города и …
  • MPLAB® Code ConfiguratorMPLAB® Code Configurator
    MPLAB ® Code конфигуратор (MCC) является свободно распространяемым плагином, это графическая среда программирования, которая генерирует бесшовный, легкий для понимания кода на Cи, чтобы вставить его в свой проект. Метки:MPLAB® Code …
  • Проект с использованием MCC часть 06Проект с использованием MCC часть 06
    Изменим схему следующим образом добавим две тактовые кнопки BT1 и BT2. Теперь переключимся на конфигурацию выводов, для этого сделаем двойной клик в окне Ресурсы проекта на Pin Module. В окне Pin …
  • Сенсорный выключатель светаСенсорный выключатель света
    Хотя в настоящий момент актуальны системы управления освещением с передачей данных по электросети, но я думаю, что проекты такого рода тоже имеют право на жизнь. Анонс Три вида сенсора – …
  • APA102 – светодиоды со встроенным драйвером и SPI интерфейсомAPA102 – светодиоды со встроенным драйвером и SPI интерфейсом
    APA102 В 2014 году фирма Shenzhen Led Color Optoelectronic Co., Ltd http://www.szledcolor.com/ начала производство светодиодов на драйвере APA102. Это серия так называемых светодиодов со встроенным драйвером. Основной особенностью этих светодиодов, что …
  • MCC PIC24 – модуль OUTPUT COMPARE – в режиме генератора звуковых сигналовMCC PIC24 – модуль OUTPUT COMPARE – в режиме генератора звуковых сигналов
    При проектировании простых устройств автоматики, часто необходимо иметь механизм звукового оповещения. Самый верхний уровень, это формирование голосовых сообщений, но об этом, как то по позже… В самом примитивном варианте можно …
  • Регулятор влажности ch-3800Регулятор влажности ch-3800
      И еще один проект на плате ch-c3xxx –  универсальный регулятор влажности ch-3800. Регулятор позволяет работать как в режиме индикатора влажности, так и в режиме регулятора. Рабочий диапазон измеряемой относительной …
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый из уровней …
  • Altium Designer – подготовка документации для производства и сборки печатных платAltium Designer – подготовка документации для производства и сборки печатных плат
    В процессе освоения Altium Designer много возникает вопросов по подготовке документации для производства плат, а также для её сборки. Altium Designer позволяет сделать все требуемые документы, хотя скажем откровенно, для …



 

Tagged with →  
Share →

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Translate »

Copyright © Catcatcat electronics 2013-2019. Все права защищены.
Копирование разрешается только с указанием активной ссылки на правообладателя.

e-mail: catcatcat.electronics@gmail.com