AD9833 – Programmable Waveform Generator

Views: 3084


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  мне понтравилась, поэтому планирую в ближайшем будущем сделать для него печатную плату и корпус.

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


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


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

Значок

AD9833 - Programmable Waveform Generator схема 368.87 KB 218 downloads

Простой генератор звуковых частот на AD9833. ...
Значок

AD9833 - Programmable Waveform Generator - прошивка 16.43 KB 187 downloads

Прошивка для проекта. ...

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

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

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

Значок

AD9833 - Programmable Waveform Generator V2.0 17.68 KB 9 downloads

Функция выбора частот по нотам! ...

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

Значок

AD9833 - Programmable Waveform Generator V2.1 17.66 KB 61 downloads

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

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

Значок

AD9833 – Programmable Waveform Generator V3.01 17.88 KB 837 downloads

Прошивка V3.01 - исправлены некоторые дефекты графических...

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


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


  • Мультизоновый индикатор-терморегулятор ch-c3010Мультизоновый индикатор-терморегулятор ch-c3010
    Views: 1367 Часто возникает необходимость получить информацию по температуре с множества точек контроля. Вам необходимо знать температуру в комнате, в коридоре,  температуру на улице, а в погребе (или на балконе) …
  • Проект с использованием MCC часть 05Проект с использованием MCC часть 05
    Views: 2212 Эту часть назовем так как избавься от delay, там где а это реально не надо. Для это нам потребуется научиться использовать прерывания и работать с таймерами. Что такое …
  • Altium Designer first projectAltium Designer first project
    Views: 543 Эта статья подразумевает, что у вас установлен и настроен Altium Designer как описано в статье  Altium Designer my setup system and project structure.  Обратите внимание! Библиотека постоянно обновляется, …
  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Views: 3084 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • УКВ – радиоприем, часть 2УКВ – радиоприем, часть 2
    Views: 6442 Пришло свободное время решил вторую часть проекта реализовать (правда есть мысль и третью с использование цветного OLED и функцией ch-светомузыки, но это только задумка… Для понимания функций интегрального …
  • Просто о внешних переменныхПросто о внешних переменных
    Views: 949  Часто возникает задача когда необходимо предавать данные между модулями программы. Например, передать данные между файлами, или управлять работой модулей. Для этого создаем заголовочный файл и описываем наши переменные как …
  • LATINO – открытый проект ch-светомузыкиLATINO – открытый проект ch-светомузыки
    Views: 1758   Проект построенный на некоторых принципах ch-светомузыка. Проект ознакомительный предназначен, для самостоятельного построения простого и эффективного светосинтезатора. Вывод осуществляется на ВОУ собранной на драйверах HL1606. Для этого была …
  • Система AT команд версии V2.0 для ESP8266 и ESP32Система AT команд версии V2.0 для ESP8266 и ESP32
    Views: 13748 Появление нового модуля на базе ESP32 заставило систематизировать систему AT команд, а так же систему обновления и для модулей на базе ESP8266. Начиная с версии v2.0 в ESP8266 …
  • Униполярный шаговый двигательУниполярный шаговый двигатель
    Views: 2473     В приводах различных устройств часто применяются шаговые двигатели, Шаговый двигатели различают двух типов униполярные – когда обмотки коммутируются током текущим только в одну сторону, например при …
  • REFERENCE CLOCK OUTPUT MODULEREFERENCE CLOCK OUTPUT MODULE
    Views: 608 REFERENCE CLOCK OUTPUT MODULE Модуль формирования опорного тактового сигнала Модуль опорного тактового сигнала обеспечивает возможность посылать сигнал синхронизации на тактовый опорный выходной контакт или контакты (CLKR) в зависимости от …



 

Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее

Комментарии

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

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