Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Работа с DDS AD9832
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
ALexx
Доброго времени суток.

Имеется необходимость генерации прямоугольных импульсов в широком диапазоне частот (10Гц-100кГц). Принято решение использовать AD9832 для данных целей.
Внимательное курение датащита привело к пониманию принципов работы с девайсом, но не до конца :-(
Вопросы к имевшим дело с данным девайсом:

1) Форма сигнала на выходе DDS - синусоида. С установкой частоты все понятно. Но как сигнал смещен относительно нуля? Ткните носом в датащит, если там что-то подобное указано. Есть только абсолютное значение амплитуды.. И все. Был бы корпус "человеческий" - распаял и проверил, ан нет - прийдется ждать плату, которую пока не спешу заказывать - замкнутый круг :-)

2) В прикрепленном файле - часть схемы конечного устройства. Покритикуйте, пожалуйста, с учетом практического опыта.

Заранее спасибо откликнувшимся!
proxi
Цитата(ALexx @ Dec 25 2007, 14:13) *
Доброго времени суток.

Имеется необходимость генерации прямоугольных импульсов в широком диапазоне частот (10Гц-100кГц). Принято решение использовать AD9832 для данных целей.
Внимательное курение датащита привело к пониманию принципов работы с девайсом, но не до конца :-(
Вопросы к имевшим дело с данным девайсом:

1) Форма сигнала на выходе DDS - синусоида. С установкой частоты все понятно. Но как сигнал смещен относительно нуля? Ткните носом в датащит, если там что-то подобное указано. Есть только абсолютное значение амплитуды.. И все. Был бы корпус "человеческий" - распаял и проверил, ан нет - прийдется ждать плату, которую пока не спешу заказывать - замкнутый круг :-)

2) В прикрепленном файле - часть схемы конечного устройства. Покритикуйте, пожалуйста, с учетом практического опыта.

Заранее спасибо откликнувшимся!

На выходе будет синус с постоянной состовляющей..
rx3apf
Цитата(ALexx @ Dec 25 2007, 15:13) *
1) Форма сигнала на выходе DDS - синусоида. С установкой частоты все понятно. Но как сигнал смещен относительно нуля? Ткните носом в датащит, если там что-то подобное указано. Есть только абсолютное значение амплитуды..

Средняя точка, вполне очевидно - половина от размаха.

Цитата
И все. Был бы корпус "человеческий" - распаял и проверил, ан нет - прийдется ждать плату, которую пока не спешу заказывать - замкнутый круг :-)

Приклеить на кусочек текстолита, растащить выводы тонким проводом - всего-то 16 ног. Мелковат шаг, конечно - но можно, если очень аккуратно.

Цитата
2) В прикрепленном файле - часть схемы конечного устройства. Покритикуйте, пожалуйста

Цепь R28, R29 и особенно VD2 вызывает недоумение. Порог сравнения (R27) - тоже.
ALexx
Цитата(proxi @ Dec 25 2007, 16:28) *
На выходе будет синус с постоянной состовляющей..


Т.е. получается компаратор (см. схему) мне надо настроить на 0,6В ?


Цитата(rx3apf @ Dec 25 2007, 16:34) *
Цепь R28, R29 и особенно VD2 вызывает недоумение. Порог сравнения (R27) - тоже.


Согласен на все 100%. Однако в датащите на данный компаратор:
Нажмите для просмотра прикрепленного файла
m16
Цитата(ALexx @ Dec 25 2007, 16:13) *
Имеется необходимость генерации прямоугольных импульсов в широком диапазоне частот (10Гц-100кГц). Принято решение использовать AD9832 для данных целей.....
.... Форма сигнала на выходе DDS - синусоида..........

не усложняйте себе жизнь , посмотрите давний проект Ридико Леонида Ивановича
ALexx
Цитата(m16 @ Dec 25 2007, 16:40) *
не усложняйте себе жизнь , посмотрите давний проект Ридико Леонида Ивановича


Хотелось бы не усложнять :-) Данный проект видел и уже давно. Не совсем подходит он.
Поробуйте посчитать длительности импульсов для частот 100 000Гц и 99 999Гц , сравнить разность данных длительностей с минимальным шагом перестройки вышеупомянутого генератора и поймете, что он - не совсем то, что мне нужно.
=AVR=
1. Сигнал относительно нуля не смещен НИКАК - это токовый ЦАП, и его выходной ток при коде 0000000000 будет равен нулю, равно как и напряжение на нагрузочном резисторе. Сигнал при коде 1111111111 будет ПРИБЛИЗИТЕЛЬНО равен 12.5*Rload*Vrefin/Rset, или 12.5*0.3*1.21/3.9~=1.16В, следовательно, при коде 0111111111 на выходе будет половина этого напряжения, или 0.58В.

2. Если тебе нужен симметричный прямоугольник, то компаратор придется развязать от выхода DDS конденсатором - при DC-связи скважность на выходе компаратора будет трудно сделать близко к 50%. Можно также поставить после компаратора триггер - делитель частоты на 2.

3. По твоей схеме, не затрагивая пока связи по DC:

- Генератор лучше взять на максимально возможную частоту - 25 МГЦ - сигнал будет чище.
- Не вижу необходимости в D2, R28, R26.
- Вместо D2 надо поставить конденсатор, который вместе с R29 образует RC-фильтр с частотой среза порядка 1/10 от Fxtal.
- Верх R27 надо подключить не к Vcc, а к RefO.
- R4 надо пересчитать так, чтобы гистерезис был порядка 0.2%.

4. Есть более подходящие для тебя DDS - например, AD5932, в котором уже есть выход прямоугольника (правда, не компараторного, а с доЦАПового MSB) и другие приятности.

5. Если огласишь все требования к сигналу (ну или хотя бы нужный шаг перестройки частоты), то, возможно, подскажу еще более эффективное решение.



Не говори, что мне делать, и я не скажу, куда тебе пойти
ALexx
Цитата(=AVR= @ Dec 25 2007, 17:17) *
1. Сигнал относительно нуля не смещен НИКАК - это токовый ЦАП...
2. Если тебе нужен симметричный прямоугольник, то компаратор придется развязать от выхода DDS конденсатором - при DC-связи скважность на выходе компаратора будет трудно сделать близко к 50%. Можно также поставить после компаратора триггер - делитель частоты на 2.
3. По твоей схеме, не затрагивая пока связи по DC...
4. Есть более подходящие для тебя DDS - например, AD5932, в котором уже есть выход прямоугольника (правда, не компараторного, а с доЦАПового MSB) и другие приятности.
5. Если огласишь все требования к сигналу (ну или хотя бы нужный шаг перестройки частоты), то, возможно, подскажу еще более эффективное решение.


1. ОК. Понятно
2. Второй вариант больше нравится
3. Подправил. Наличие диода - "пережиток" того времени, когда считал. что на выходе биполярное напряжение.
4. Когда-то смотрел на DDS с выходом прямоугольника (уже не помню какая именно микруха) , но данный выход был внутри развязан конденсатором, что не позволяло снимать сигнал низкой частоты.
Здесь (AD5932) вижу, что прямоугольник снимается с младшего разряда. И если он (опять таки) не развязан кондером, то, действительно - то, что надо.
5. Требования: Частота 10Гц - 100 000 кГц, меандр, амплитуда 5 (хотя в дальнейшем сигнал поступает на полевик, который коммутирует напряжение в диапазоне 2...6В). Шаг перестройки 1Гц (ну может 0,5Гц), но во всем диапазоне выходных частот.
=AVR=
По схеме: DD4.2 не нужен, R29, R4 и R2 уменьшить до 1к, 330к и 3к соответственно.

Ну и теперь по сути. Дискрет 0.5 ГЦ прекрасно получается 24-битным програмным DDS на Меге48 или даже Tiny24/25/26. Весь код - несколько строк на АСМ:

Код
dds:
    add    r20,r16    ; Add a 24-bit delta value to a 24-bit phase accumulator r20..r22
    adc    r21,r17
    adc    r22,r18

    out    PORTB,r22; PORTB.7 = 24-bit phase accumulator MSb
    rjmp    dds

24-битное число DELTA в r16..18 (r18 = MSB) задает частоту по следующей формуле:

DELTA = ((2^24)*6*Fdds)/Fxtal

Здесь 6 - число тактов на одну DDS-итерацию, Fdds - желаемая частота, Fxtal - частота кварца. Частоты, разумеется, должны быть в одинаковых единицах измерения
khach
Посмотрел схему. Дурацкий вопрос- а где же на ней аналоговый ФНЧ, между выходом ДДС и компаратором?
=AVR=
У него Fxtal/FddsMax > 250, поэтому RC 1-го порядка + медленный LM393 = вполне достаточно
gte
[quote name='ALexx' date='Dec 25 2007, 15:13' post='343008']
1) Форма сигнала на выходе DDS - синусоида. С установкой частоты все понятно. Но как сигнал смещен относительно нуля? Ткните носом в датащит, если там что-то подобное указано. Есть только абсолютное значение амплитуды.. И все. Был бы корпус "человеческий" - распаял и проверил, ан нет - прийдется ждать плату, которую пока не спешу заказывать - замкнутый круг :-)
[/quote]

Смените, например, на AD9834. Цена та же, купить не проблема. Имеется встроенный компаратор, два токовых выхода, можно формировать, если надо, двухполярный сигнал.
Перед компаратором сигнал лучше отфильтровать.


[/quote]
ALexx
Цитата(=AVR= @ Dec 25 2007, 20:47) *
Ну и теперь по сути. Дискрет 0.5 ГЦ прекрасно получается 24-битным програмным DDS на Меге48 или даже Tiny24/25/26. Весь код - несколько строк на АСМ:
....

Да. Такой вариант рассматривал. И он у меня является запасным.

Спасибо за конструктивную критику. Прилагаю схему с учетом Ваших рекомендаций.

Цитата(gte @ Dec 25 2007, 22:06) *
Смените, например, на AD9834...


Спасибо. Хорошая штука... И чего это я на 9832 зациклился laughing.gif
=AVR=
C14 можно смело увеличить до сотен пФ, и DDS поставить 9834 - тогда компаратор будет использован внутренний, а ставить или не ставить триггер - решишь сам в зависимости от требований. Компаратор в 9834 - "самосмещаемый", т.е. на опорном входе у него среднее значение напряжения на сигнальном входе, поэтому он должен всегда выдавать скважность, весьма близкую к 50%
ALexx
Всем спасибо!
=AVR= отдельный a14.gif
=AVR=
За 9834 надо qte отдельно благодарить, а не меня - я совсем про него было забыл
Georgy
AD9851 такой же неплохой вариант, и схема синтеза прямоугольника есть в даташите с номиналами фильтра и т.д, вообще думать почти не надо. Сигнал очень чистый получится, особо если внешнюю тактовую 30 МГц умножаешь внутренне на 6.
Дешёва по цене, проста и надёжна, питание циф и аналог. лучше от одного источника подавать, порознь - можно спалить при неодновременном вкл/выкл. Выходной сигнал компаратора в ТТЛ уровнях, 20 мА (до 30). Фильтр можно загрубить по частоте, раз в 10. т.к. ном. срез = 72 МГц.
gte
Цитата(Georgy @ Dec 26 2007, 21:30) *
AD9851 такой же неплохой вариант, и схема синтеза прямоугольника есть в даташите с номиналами фильтра и т.д, вообще думать почти не надо. Сигнал очень чистый получится, особо если внешнюю тактовую 30 МГц умножаешь внутренне на 6.
Дешёва по цене, проста и надёжна, питание циф и аналог. лучше от одного источника подавать, порознь - можно спалить при неодновременном вкл/выкл. Выходной сигнал компаратора в ТТЛ уровнях, 20 мА (до 30). Фильтр можно загрубить по частоте, раз в 10. т.к. ном. срез = 72 МГц.


Думать всегда полезно.
А для данного применения использовать 9851 не имеет смысла по следующим причинам.
1. При 50 МГц AD9834 будет работать с сильной передискретизацией.
2. При 180МГц AD9851 будет потреблять 0,5 Вт, оно надо?
3. Цена 9851 $13.4@1K а цена AD9834 $4,95@1K
Georgy
Цитата
сильной передискретизацией

What is it? В смысле итак достаточно?
чем выше КЛК тем чище сигнал.
Спорить не надо, в обоих случаях есть достоинства и недостатки.
Скупой платит дважды.
Пускай автор выбирает, ему это надо, не нам.
Успехов!
gte
Цитата(Georgy @ Dec 27 2007, 21:54) *
What is it? В смысле итак достаточно?
чем выше КЛК тем чище сигнал.
Спорить не надо, в обоих случаях есть достоинства и недостатки.
Скупой платит дважды.


Да, достаточно. В противовес большей частоте дискретизации будет существенно больший ток, что, наверняка, скажется и на чистоте сигнала. А качество синуса, если необходимо, лучше повысить фильтром или использованием серии DDS с ЦАПом большей разрядности и лучше 99 серии. Нет никаких преимуществ у AD9851 перед AD9834 для заданных условий. Еще и делитель на компаратор придется ставить.
Georgy
Цитата
Еще и делитель на компаратор придется ставить.

С какого перепугу? Частота синуса на выходе задаётся оператором, из неё получается меандр такой же точно частоты. Шаг установки один и тот же (при тактах=180 МГц шаг = 0,04 герц), Вы просто не до конца разобрались с физикой процесса.
51 давно освоен, я знаю, что говорю.
30-с него начинал, и знаю, что стои'т за высокой тактовой. Можно просчитать, какая тактовая будет соответствовать наиболее эффективному использованию выходного ЦАП, чтоб последний максимальную частоту воспроизводил точка в точку, её и подобрать кварцем.
Цитата
существенно больший ток, что, наверняка, скажется и на чистоте сигнала.

Вот это уже из головы выдумано, не так ли?
Нет такой беды у 51го, особенно если на выходе 100 каких-то килогерц.
gte
Цитата(Georgy @ Dec 29 2007, 04:33) *
С какого перепугу? Частота синуса на выходе задаётся ..

Я писал про делитель напряжения, разве это не очевидно?
См. Figure 2. Basic Clock Generator Confi guration в описании на 9851.
Цитата
51 давно освоен, я знаю, что говорю.
30-с него начинал, и знаю, что стои'т за высокой тактовой. Можно просчитать, какая тактовая будет соответствовать наиболее эффективному использованию выходного ЦАП, чтоб последний максимальную частоту воспроизводил точка в точку, её и подобрать кварцем.

Если высокие требования к сигналу, то лучше AD9954. Он всего на 30% дороже 9851 при 14 разрядном ЦАП и 400 МГц.

Цитата
Вот это уже из головы выдумано, не так ли?
Нет такой беды у 51го, особенно если на выходе 100 каких-то килогерц.

Очевидно, что есть, вопрос только какой вклад это вносит. В любом случае, если достаточен DDS c 8 мА, то разумней взять его, а не тот кристалл, у которого 130 мА и который в 2 раза дороже.
Georgy
Цитата
Скупой платит дважды.

Да.
Чистота сигнала максимальна при рекомендованном (номинальном) выходном токе.
Ток потребления немного от него зависит.
Если автор применит что менее энергоёмко, я не обижусь.
только тема DDS была бы более актуальна не в AVR...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.