Муфты электромонтажные от производителя Fucon

Как превратить микросхему прямого цифрового синтеза в генератор сигналов произвольной формы

AD9833

Antonio Munoz

В свое время нами был создан портативный генератор сигналов низкой частоты диапазона 0 … 1 МГц. Генератор имел широкий диапазон выходных напряжений (0 … 100 В п-п) и среднюю нагрузочную способность (500 мА).

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Позднее потребовался прибор аналогичной конструкции, с дополнительной функцией генерации сигналов произвольной формы. К новому генератору предъявлялись достаточно скромные требования (1 Мвыб/с, разрешение 10 бит), поэтому было решено использовать схемное решение первоначальной разработки, лишь слегка усовершенствовав его. Ниже мы расскажем, как это можно сделать.

В оригинальном генераторе использовалась микросхема прямого цифрового синтеза (Direct Digital Synthesis – DDS) AD9833, управлявшаяся микроконтроллером PIC24FJ16. Для воспроизведения сигналов произвольной формы мы задействовали регистры частоты и сдвига фаз микросхемы DDS.

Программно конфигурируемые мультиплексоры микросхемы DDS позволяют исключить таблицу SIN/ROM из процесса формирования сигнала (см. рисунок) и подключить сумматор фазовых сдвигов (аккумулятор фазы + регистр сдвига фаз 0/1) напрямую ко входу цифро-аналогового преобразователя (ЦАП).

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

 Надписи на рисунке
FREQ0 REG
Регистр частоты 0
FREQ1 REG
Регистр частоты 1
Multiplexer
Мультиплексор
Serial Interface and control logic
Последовательный интерфейс и логика управления
Regulator
Стабилизатор напряжения
PHASE0 REG
Регистр сдвига фаз 0
PHASE1 REG
Регистр сдвига фаз 1
Control register
Регистр управления
Phase accumulator (28 bits)
Аккумулятор фазы (28 бит)
SIN ROM
ПЗУ с таблицей значений синуса
Divide by 2
Делитель на 2
On-board reference
Внутренний источник опорного напряжения
Full-scale control
Управление масштабом выходного напряжения
10-bit DAC
10-разрядный ЦАП

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

Однако, для практического использования генератора сигналов, необходимо равномерное во времени обновление содержимого регистра сдвига фаз, а, по сути, поддержание постоянной скорости выборки ЦАП. Мы добились этой равномерности использованием того факта, что данные в регистр передаются последовательно, словами по 16 бит. При низком уровне на входе FSYNC, AD9833 постоянно обновляет регистры (первые четыре бита определяют адрес регистра), и, таким образом, через каждые 16 синхроимпульсов в регистр сдвига фаз заносится новое значение.

Таким образом, после очистки аккумулятора фазы, инициализации регистра частоты нулем и подачи низкого логического уровня на вход FSYNC, посылка непрерывного потока данных в регистр сдвига фаз превращает выход микросхемы DDS в источник сигналов произвольной формы с эквивалентной частотой выборки, напрямую связанной с частотой синхронизации SPI. Частота дискретизации равна:

Sps = SCLK_FREQ / 16

где

SCLK_FREQ – тактовая частота SPI на выводе SCLK
16 – соответствует числу бит в командном слове.

Так, например, при тактовой частоте SPI 12.5 МГц, частота выборки будет равна 0.7812 Мвыб/с. На практике несложно получить частоту выше 1 Мвыб/с.

Необходимо отметить еще несколько моментов. Во-первых, регистры сдвига фаз имеют длину 12 разрядов, а разрядность ЦАП – 10, что при генерации сигналов произвольной формы делает два младших разряда регистров ненужными.

Во-вторых, регистр сдвига фазы необходимо загружать двумя дополнительными значениями. И, наконец, тактовая частота интерфейса SPI должна быть связана с синхронизирующей загрузку регистров частотой MCLK микросхемы DDS. В противном случае, возможно появление небольшого джиттера выходного сигнала.

Перевод: AlexAAN по заказу РадиоЛоцман

На английском языке: Turn DDS Chip Into Low-Frequency Arbitrary Signal Generator

54 предложений от 34 поставщиков
Генератор DDS сигналов AD9833 синусоида, прямоуг. и пилообр. Питание: 2,3-5,5В. Частота импульсов 0Гц - 12,5МГц с шагом 0,1Гц. Интегрированный операционный усилитель...
EIS Components
Весь мир
AD9833
Analog Devices
75 ₽
ЗУМ-СМД
Россия
AD9833BRMZ
Analog Devices
123 ₽
T-electron
Россия и страны СНГ
AD9833BRMZ
Analog Devices
369 ₽
ICdarom.ru
Россия
AD9833BRMZ-REEL7 AD MSOP-10
Analog Devices
от 500 ₽
Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения:Полный вариант обсуждения »
  • кто-нибудь так пробовал делать? используя программный spi, делал все по статье, но не получается: dds вообще не генерирует заданную форму сигнала