Menu Home

Бесплатная техническая библиотека для любителей и профессионалов Бесплатная техническая библиотека


Функциональный DDS генератор. Энциклопедия радиоэлектроники и электротехники

Бесплатная техническая библиотека

Энциклопедия радиоэлектроники и электротехники / Измерительная техника

Комментарии к статье Комментарии к статье

Данный DDS функциональный генератор (версия 2.0) сигналов собран на микроконтроллере AVR, обладает хорошей функциональностью, имеет амплитудный контроль, а также собран на односторонней печатной плате.

Функциональный DDS генератор. Внешний вид DDS-генератора

Данный генератор базируется на алгоритме DDS-генератора Jesper, программа была модернизирована под AVR-GCC C с вставками кода на ассемблере. Генератор имеет два выходных сигнала: первый - DDS сигналы, второй - высокоскоростной (1..8МГц) "прямоугольный" выход, который может использоваться для оживления МК с неправильными фузами и для других целей.

Высокоскоростной сигнал HS (High Speed) берется напрямую с микроконтроллера Atmega16 OC1A (PD5).

DDS-сигналы формируются с других выходов МК через резистивную R2R-матрицу и через микросхему LM358N, которая позволяет осуществить регулировку амплитуды (Amplitude) сигнала и смещение (Offset). Смещение и амплитуда регулируются при помощи двух потенциометров. Смещение может регулироваться в диапазоне +5В..-5В, а амплитуда 0...10В. Частота DDS-сигналов может регулироваться в пределах 0... 65534 Гц, это более чем достаточно для тестирования аудио-схем и других радиолюбительских задач.

Основные характеристики DDS-генератора V2.0

- простая схема с распространенными и недорогими радиоэлементами;
- односторонняя печатная плата;
- встроенный блок питания;
- отдельный высокоскоростной выход (HS) до 8МГц;
- DDS-сигналы с изменяемой амплитудой и смещением;
- DDS-сигналы: синус, прямоугольник, пила и реверсивная пила, треугольник, ЭКГ-сигнал и сигнал шума;
- 2×16 LCD экран;
- интуитивная 5-ти кнопочная клавиатура;
- шаги для регулировки частоты: 1, 10, 100, 1000, 10000 Гц;
- запоминание последнего состояния после включения питания.

На представленной ниже блок-схеме, приведена логическая структура функционального генератора:

Функциональный DDS генератор. Логическая структура функционального генератора

Как вы можете видеть, устройство требует наличие нескольких питающих напряжений: +5В, -12В, +12В. Напряжения +12В и -12В используются для регулирования амплитуды сигнала и смещения. Блок питания сконструирован с использованием трансформатора и нескольких микросхем стабилизаторов напряжения:

Функциональный DDS генератор. Схема блока питания DDS-генератора
(нажмите для увеличения)

Блок питания собран на отдельной плате:

Функциональный DDS генератор. Блок питания DDS-генератора

Если самому собирать блок питания нет желания, то можно использовать обычный ATX блок питания от компьютера, где уже присутствуют все необходимые напряжения. Разводка ATX разъема.

LCD-экран

Все действия отображаются через LCD-экранчик. Управление генератором осуществляется пятью клавишами

Функциональный DDS генератор. LCD-меню

Клавиши вверх/вниз используются для перемещения по меню, клавиши влево/вправо для изменения значения частоты. Когда центральная клавиша нажата - начинается генерирование выбранного сигнала. Повторное нажатие клавиши останавливает генератор.

Система меню генератора:

Функциональный DDS генератор. Система меню генератора

Для установки шага изменения частоты предусмотрено отдельное значение. Это удобно, если вам необходимо менять частоту в широких пределах.

Генератор шума не имеет каких-либо настроек. Для него используется обычная функция rand() непрерывно подающиеся на выход DDS-генератора.

Высокоскоростной выход HS имеет 4 режима частоты: 1, 2, 4 и 8 МГц.

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

Схема функционального генератора простая и содержит легкодоступные элементы:
- микроконтроллер AVR Atmega16, с внешним кварцем на 16 МГц;
- стандартный HD44780-типа LCD-экранчик 2×16;
- R2R-матрица ЦАП из обычных резисторов;
- операционный усилитель LM358N (отечественный аналог КР1040УД1);
- два потенциометра;
- пять клавиш;
- несколько разъемов.

Функциональный DDS генератор. Принципиальная схема DDS-генератора
(нажмите для увеличения)

Плата

Функциональный DDS генератор. Плата генератора

Функциональный генератор собран в пластиковом боксе

Функциональный DDS генератор. Собранный генератор

Тестовый запуск

Функциональный DDS генератор. Тестовый запуск

Программное обеспечение

Как я уже говорил выше, в основе своей программы я использовал алгоритм DDS-генератора Jesper. Я добавил несколько строчек кода на ассемблере для реализации останова генерирования. Теперь алгоритм содержит 10 ЦПУ циклов, вместо 9.

void static inline Signal_OUT(const uint8_t *signal, uint8_t ad2, uint8_t ad1, uint8_t ad0){
asm volatile( "eor r18, r18 ;r18<-0″ "\n\t"
"eor r19, r19 ;r19<-0″ "\n\t"
"1:" "\n\t"
"add r18, %0 ;1 cycle" "\n\t"
"adc r19, %1 ;1 cycle" "\n\t"
"adc %A3, %2 ;1 cycle" "\n\t"
"lpm ;3 cycles" "\n\t"
"out %4, __tmp_reg__ ;1 cycle" "\n\t"
"sbis %5, 2 ;1 cycle if no skip" "\n\t"
"rjmp 1b ;2 cycles. Total 10 cycles" "\n\t"
:
:"r" (ad0),"r" (ad1),"r" (ad2),"e" (signal),"I" (_SFR_IO_ADDR(PORTA)), "I" (_SFR_IO_ADDR(SPCR))
:"r18″, "r19″
);}

Таблица форм DDS-сигналов размещена во флэш памяти МК, адрес которой начинается с 0xXX00. Эти секции определены в makefile, в соответствующих местах в памяти:

#Define sections where to store signal tables
LDFLAGS += -Wl,-section-start=.MySection1=0x3A00
LDFLAGS += -Wl,-section-start=.MySection2=0x3B00
LDFLAGS += -Wl,-section-start=.MySection3=0x3C00
LDFLAGS += -Wl,-section-start=.MySection4=0x3D00
LDFLAGS += -Wl,-section-start=.MySection5=0x3E00
LDFLAGS += -Wl,-section-start=.MySection6=0x3F00

Библиотеку для работы с LCD можно взять на winavr.scienceprog.com.

Не хочу вдаваться в подробное описание кода программы. Исходный код хорошо прокомментирован (правда на английском языке) и если будут какие либо вопросы по нему, то всегда можете воспользоваться нашим форумом по МК, forum.cxem.net.

Тестирование

Я тестировал генератор с осциллографом и частотомером. Все сигналы хорошо генерируются во всем диапазоне частот (1...65535 Гц). Регулирование амплитуды и смещения работает нормально.

Функциональный DDS генератор. Сигналы DDS-генератора
(нажмите для увеличения)

В следующей версии генератора думаю реализовать сигнал нарастающей синусоиды.

Последнюю версию ПО (WinAVR20071221), исходник, файлы EagleCAD и Proteus можете скачать здесь.

Автор: Колтыков А.В.; Публикация: cxem.net

Смотрите другие статьи раздела Измерительная техника.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Последние новости науки и техники, новинки электроники:

Кислотность океана разрушает зубы акул 03.10.2025

Мировые океаны выполняют важнейшую функцию - они поглощают около трети углекислого газа, выбрасываемого в атмосферу. Это помогает замедлять темпы глобального потепления, но имеет и обратную сторону. Растворяясь в воде, CO2 образует угольную кислоту, которая повышает концентрацию водородных ионов и приводит к снижению pH. Вода становится более кислой, а последствия этого процесса уже заметны для морских экосистем. Средний показатель кислотности океана сейчас равен примерно 8,1, тогда как еще недавно за условную норму брали значение 8,2. По прогнозам, к 2300 году уровень может упасть до 7,3 - это сделает океан почти в десять раз кислее нынешнего состояния. Для обитателей морей подобные изменения означают не просто сдвиг химического равновесия, а реальную угрозу физиологическим процессам, начиная от формирования раковин у моллюсков и заканчивая охотничьим поведением акул. Чтобы выяснить, как именно кислотная среда отражается на зубах акул, группа немецких исследователей провела эксп ...>>

Почтовый космический корабль Arc 03.10.2025

Космические технологии становятся частью инфраструктуры, способной повлиять на логистику, медицину и даже военную сферу. Идея использовать орбиту как глобальный склад для срочных поставок звучала еще недавно как научная фантастика, но стартап Inversion пытается превратить ее в практическое решение. Компания Inversion появилась в начале 2021 года благодаря Джастину Фиаскетти и Остину Бриггсу, которые на тот момент были студентами Бостонского университета. Их замысел состоял в том, чтобы сделать возможной доставку грузов не только через спутниковые сети данных, но и в буквальном смысле - физических предметов. В основе лежит простая мысль: если космос обеспечивает доступ к любой точке Земли, то и грузы должны перемещаться тем же маршрутом. Уже за три года работы команда из 25 специалистов успела построить демонстрационный аппарат "Ray". Его запуск состоялся в рамках миссии SpaceX Transporter-12. Устройство весом 90 килограммов проверяло ключевые технологии Inversion, включая двухком ...>>

Лазерное обогащение урана 02.10.2025

Ядерная энергия остается одним из ключевых источников стабильного электричества, особенно для стран с растущими потребностями в энергоснабжении. Однако обеспечение бесперебойных поставок топлива для атомных станций требует современных технологий обогащения урана, которые одновременно эффективны и безопасны. Американская компания Global Laser Enrichment (GLE) делает значительный шаг в этом направлении, завершив масштабное тестирование лазерной технологии обогащения урана. Демонстрационная программа была проведена на объекте в Уилмингтоне, Северная Каролина. Тестирование технологии SILEX (Separation of Isotopes by Laser EXcitation), разработанной австралийской Silex Systems, стартовало в мае 2025 года и продлится до конца года. В ходе экспериментов компания планирует получить сотни фунтов низкообогащенного урана (LEU), который может быть использован в качестве топлива для атомных электростанций. GLE была создана в 2007 году для коммерциализации лазерных методов обогащения урана в С ...>>

Случайная новость из Архива

Действующая модель Земли 11.07.2002

Помнится, у Воланда был глобус, на котором можно было в реальном времени увидеть, что происходит в разных странах. Подобное устройство установили в новом Технологическом музее в Токио.

Глобус диаметром 650 сантиметров и весом 18 тонн покрыт маленькими квадратными экранчиками - всего их 3715, и на каждом 256 светодиодов, позволяющих отображать информацию, которая поступает со спутников и с метеостанций.

Каждые три часа демонстрируется картина облачности над Землей. Пожеланию посетителей можно посмотреть изменения облачной картины за последний месяц. Особенно интересно наблюдать прохождение тайфунов и циклонов. Время от времени глобус переключается на отображение концентрации угарного газа на высоте 6000 метров над Землей. Низкие концентрации изображаются оттенками синего цвета, опасные - оранжевым и красным.

Дважды в день глобус показывает смену дня и ночи: одно полушарие погружается во тьму, и на нем сияют огоньки крупных городов. Экспозиция пользуется большим успехом у посетителей.

Другие интересные новости:

▪ Яд паука спасет при сердечном приступе

▪ Металлический водород

▪ Смартфон Microsoft Lumia 430

▪ Золотая военная униформа

▪ Грустная музыка улучшает настроение

Лента новостей науки и техники, новинок электроники

 

Интересные материалы Бесплатной технической библиотеки:

▪ раздел сайта Мобильная связь. Подборка статей

▪ статья Суда на воздушной подушке. История изобретения и производства

▪ статья Как играют в бейсбол? Подробный ответ

▪ статья Обслуживание подземных резервуаров для хранения сжиженного газа. Типовая инструкция по охране труда

▪ статья Вау-бустер для электрогитары. Энциклопедия радиоэлектроники и электротехники

▪ статья Видеоразветвители мощности. Энциклопедия радиоэлектроники и электротехники

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:





Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua

www.diagram.com.ua
2000-2025