• Программируемая через цифровой интерфейс частота и фаза. • Низкое энергопотребление: 12.65 мВт при напряжении питания 3V. • Диапазон выходной частоты от 0 до 12.5 МГц. • 28-битная разрешающая способность по частоте: 0.1 Гц при опорной частоте тактов 25 МГц. • Форма выходного сигнала может быть синусоидальная, треугольная и прямоугольная. • Диапазон напряжений питания от 2.3 до 5.5V. • Не требуется внешних компонентов (почти). • 3-проводный интерфейс SPI. • Расширенный температурный диапазон -40°C .. +105°C. • Возможность выключения (Power-down). • 10-выводный корпус типа MSOP. • Дизайн рассчитан на мобильные, автономные приложения.
Области применения:
• Генерация сигналов и тактовых частот, генераторы качающейся частоты. • Системы измерения потока жидкости и газа. • Приложения сенсоров: сближение, движение, дефектоскопия. • Потеря линии / подстройка под параметры линии. • Оборудование тестирования, медицина. • Приложения временной доменной рефлектометрии (Time domain reflectometry, TDR).
[Общее описание]
Микросхема AD9833 это программируемый генератор сигналов с низким потреблением тока, который может генерировать сигнал синусоидальной, треугольной и прямоугольной формы. Генерация сигнала определенной формы требуется для разных типов реализаций датчиков, актуаторов, приложений TDR. Выходная частота и фаза программируется под управлением внешнего микроконтроллера, что упрощает настройку генерации. Для запуска микросхемы в работу почти не требуется внешних компонентов (кроме внешнего генератора опорных тактов и блокирующих фильтрующих конденсаторов). Регистры частоты имеют разрядность 28 бит: при тактовой частоте 25 МГц может быть достигнута дискретность установки частоты 0.1 Гц; с тактовой частотой 1 МГц может быть достигнута дискретность 0.004 Гц.
Параметры записываются в AD9833 через 3-проводный последовательный интерфейс (SPI). Этот последовательный интерфейс может работать на частотах до 40 МГц, и он хорошо подходит для подключения к любому DSP и микроконтроллеру. Микросхема может работать от напряжения источника питания 2.3 .. 5.5V.
У AD9833 есть функция выключения (power-down), или режим сна, функция SLEEP. Эта функция позволяет отключить не используемые секции устройства, минимизируя тем самым потребление тока. Например, DAC (ЦАП) может быть выключен, когда генерируется тактовый выходной сигнал (прямоугольная форма сигнала на выходе).
• AN-1044: Programming the AD5932 for Frequency Sweep and Single Frequency Outputs • AN-1070: Programming the AD9833/AD9834 • AN-1248: SPI Interface • AN-1389: Recommended Rework Procedure for the Lead Frame Chip Scale Package (LFCSP) • AN-237: Choosing DACs for Direct Digital Synthesis • AN-280: Mixed Signal Circuit Technologies • AN-342: Analog Signal-Handling for High Speed and Accuracy • AN-345: Grounding for Low-and-High-Frequency Circuits • AN-419: A Discrete, Low Phase Noise, 125 MHz Crystal Oscillator for the AD9850 • AN-423: Amplitude Modulation of the AD9850 Direct Digital Synthesizer • AN-543: High Quality, All-Digital RF Frequency Modulation Generation with the ADSP-2181 and the AD9850 DDS • AN-557: An Experimenter's Project • AN-587: Synchronizing Multiple AD9850/AD9851 DDSBased Synthesizers • AN-605: Synchronizing Multiple AD9852 DDS-Based Synthesizers • AN-621: Programming the AD9832/AD9835 • AN-632: Provisionary Data Rates Using the AD9951 DDS as an Agile Reference Clock for the ADN2812 Continuous-Rate CDR • AN-769: Generating Multiple Clock Outputs from the AD9540 • AN-772: A Design and Manufacturing Guide for the Lead Frame Chip Scale Package (LFCSP) • AN-823: Direct Digital Synthesizers in Clocking Applications Time • AN-837: DDS-Based Clock Jitter Performance vs. DAC Reconstruction Filter Performance • AN-843: Measuring a Loudspeaker Impedance Profile Using the AD5933 • AN-847: Measuring a Grounded Impedance Profile Using the AD5933 • AN-851: A WiMax Double Downconversion IF Sampling Receiver Design • AN-927: Determining if a Spur is Related to the DDS/DAC or to Some Other Source (For Example, Switching Supplies) • AN-939: Super-Nyquist Operation of the AD9912 Yields a High RF Output Signal • AN-953: Direct Digital Synthesis (DDS) with a Programmable Modulus • Introducing Digital Up/Down Converters: VersaCOMM™ Reconfigurable Digital Converters • A Technical Tutorial on Digital Signal Synthesis, 1999 • UG-272: Evaluating the AD9833 Low Power 12.65 mW, 2.3 V to 5.5 V, Programmable Waveform Generator
• 400-MSample DDSs Run On Only +1.8 VDC • ADI Buys Korean Mobile TV Chip Maker • Basics of Designing a Digital Radio Receiver (Radio 101) • DDS Applications • DDS Circuit Generates Precise PWM Waveforms • DDS Design • DDS Device Produces Sawtooth Waveform • DDS Device Provides Amplitude Modulation • DDS IC Initiates Synchronized Signals • DDS IC Plus Frequency-To-Voltage Converter Make Low-Cost DAC • DDS Simplifies Polar Modulation • Digital Potentiometers Vary Amplitude In DDS Devices • Digital Up/Down Converters: VersaCOMM™ White Paper • Digital Waveform Generator Provides Flexible Frequency Tuning for Sensor Measurement • Improved DDS Devices Enable Advanced Comm Systems • Integrated DDS Chip Takes Steps To 2.7 GHz • Simple Circuit Controls Stepper Motors • Speedy A/Ds Demand Stable Clocks • Synchronized Synthesizers Aid Multichannel Systems • The Year of the Waveform Generator • Two DDS ICs Implement Amplitude-shift Keying • Video Portables and Cameras Get HDMI Outputs
Если не указано нечто обратное, то параметры в таблице даны для условий VDD =2.3 .. 5.5V, AGND = DGND = 0V, TA = TMIN .. TMAX, RSET = 6.8 кОм для VOUT.
Параметр1
MIN
Типично
MAX
Ед.
Условия тестирования / комментарии
Спецификации сигнала DAC
Разрешающая способность
10
бит
Скорость обновления
25
MSPS2
Максимальное значение VOUT
0.65
V
Минимальное значение VOUT
38
mV
Температурный коэффициент VOUT
200
ppm/°C3
Точность по постоянному напряжению (DC), интегральная нелинейность (INL)5
±1.0
LSB4
Точность по постоянному напряжению (DC), дифференциальная нелинейность (DNL)5
±0.5
LSB4
Спецификации DDS
Динамика, SNR5
55
60
dB
fMCLK = 25 МГц, fOUT = fMCLK/4096
Динамика, THD5
-66
-56
dBc6
fMCLK = 25 МГц, fOUT = fMCLK/4096
SFDR5 в широком диапазоне (0 к частоте Найквиста)
-60
dBc
fMCLK = 25 МГц, fOUT = fMCLK/50
SFDR в узком диапазоне (± 200 кГц)
-78
dBc
fMCLK = 25 МГц, fOUT = fMCLK/50
Сквозное прохождение тактов
-60
dBc
Время пробуждения (выход из Power Down)
1
мс
Логические входы
Входное напряжение лог. 1, VINH
1.7
V
Питание 2.3 .. 2.7V
2.0
V
Питание 2.7 .. 3.6V
2.8
V
Питание 4.5 .. 5.5V
Входное напряжение лог. 0, VINL
0.5
V
Питание 2.3 .. 2.7V
0.7
V
Питание 2.7 .. 3.6V
0.8
V
Питание 4.5 .. 5.5V
Входной ток, IINH/IINL
10
μA
Входная емкость, CIN
3
пФ
Питание (fMCLK = 25 МГц, fOUT = fMCLK/4096)
VDD
2.3
5.5
V
IDD
4.5
mA
IDD зависит от кода, см. рис. 7
Режим сна с пониженным энергопотреблением (Low Power Sleep Mode)
0.5
mA
DAC выключен, тактирование MCLK активно
Примечания:
1 Рабочий диапазон температур -40°C .. +105°C; типичные спецификации подразумевают +25°C. 2 MSPS означает Million Samples Per Second, т. е. миллион выборок в секунду. 3 ppm означает parts per million. 4. LSB означает Least Significant Bit, т. е. имеется в виду вес самого младшего разряда DAC. 5. Описание терминологии см. в соответствующей врезке ниже. 6. dBc это соотношение мощности сигнала к сигналу несущей, выраженное в децибелах (dB). Например, фазовый шум выражается в dBc/Гц на указанном смещении частоты от несущей. dBc может также использоваться в измерении свободного от помех динамического диапазона (Spurious-Free Dynamic Range, SFDR) между желаемым сигналом и не желательными помехами, которые производят преобразователи DAC или частотные смесители (из Википедии).
Рис. 2. Схема тестирования, примененная для тестовых спецификаций.
Таблица 2. Параметры времени.
Если не указано нечто обратное1, то параметры в таблице даны для условий VDD =2.3 .. 5.5V, AGND = DGND = 0V.
Параметр
Предел между TMIN и TMAX
Ед.
Описание
t1
40
нс min
Период MCLK
t2
16
нс min
Длительность лог. 1 MCLK
t3
16
нс min
Длительность лог. 0 MCLK
t4
25
нс min
Период SCLK
t5
10
нс min
Длительность лог. 1 SCLK
t6
10
нс min
Длительность лог. 0 SCLK
t7
5
нс min
Время установки, интервал между спадом FSYNC и первым спадом SCLK
t8min
10
нс min
Время удержания FSYNK для SCLK
t8max
t4 - 5
нс max
t9
5
нс min
Время установки данных
t10
3
нс min
Время удержания данных
t11
5
нс min
Время установки, интервал между SCLK в лог. 1 и спадом FSYNC
Примечание 1: гарантировано дизайном, не тестируется в производстве.
Напряжение цифрового ввода/вывода относительно DGND
−0.3 V .. (VDD + 0.3 V)
Напряжение аналогового ввода/вывода относительно AGND
−0.3 V .. (VDD + 0.3 V)
Рабочий диапазон температур индустриального применения (версия B)
−40°C .. +105°C
Диапазон температур хранения
−65°C .. +150°C
Максимальная температура кристалла (Maximum Junction Temperature)
150°C
Корпус MSOP
Термосопротивление θJA
206°C/W
Термосопротивление θJC
44°C/W
Температура вывода при пайке (10 секунд)
300°C
Пиковая температура в инфракрасной печи
220°C
[Цоколевка и функции выводов]
Рис. 5. Цоколевка выводов корпуса MSOP10.
Таблица 4. Функциональное описание выводов.
№
Мнемоника
Описание
1
COMP
Вывод смещения АЦП (DAC Bias). Этот вывод используется для подключения блокировочного конденсатора, развязывающего от помех напряжение смещения АЦП.
2
VDD
Положительное напряжение питания для аналоговых секций схемы и цифрового интерфейса. Встроенный регулятор 2.5 V также получает питание от VDD. VDD может иметь значение от 2.3 V до 5.5 V. Развязывающие конденсаторы 0.1 мкФ и 10 мкФ должны быть подключены между VDD и AGND.
3
CAP/2.5V
Цифровая схемотехника работает от напряжения питания 2.5 V. Это напряжение генерируется из VDD с помощью встроенного регулятора, когда VDD превышает 2.7 V. Регулятор требует подключения к своему выходу развязывающего конденсатора типового номинала 100 нФ, который подключается между выводом CAP/2.5V и DGND. Если VDD меньше или равно 2.7 V, вывод CAP/2.5V должен быть напрямую подключен к VDD.
4
DGND
Цифровая земля.
5
MCLK
Вход основной частоты тактов (Master Clock, MCLK). Выходные частоты DDS выражаются как двоичное делимое от частоты MCLK. Этой частой определяется точность выходной частоты и фазовый шум на выходе.
6
SDATA
Последовательный вход данных (SPI). На этот вход приходит 16-битное слово данных.
7
SCLK
Вход последовательных тактов. Данные SDATA для AD9833 защелкиваются по каждому спаду сигнала SCLK.
8
FSYNC
Вход управления цифровым интерфейсом (выборка с активным лог. 0). FSYNC является синхронизирующим сигналом фрейма для входных данных. Когда FSYNC == 0, внутренняя логика интерфейса информируется о том, что в микросхему загружается новое слово.
9
AGND
Аналоговая земля.
10
VOUT
Напряжение выходного сигнала. Здесь формируется аналоговый и цифровой выход (в зависимости от режима) сигнала. Внешняя нагрузка на этом выводе не требуется, потому что в микросхеме имеется встроенный резистор нагрузки 200 Ω.
Интегральная нелинейность. Integral Nonlinearity (INL) это максимальная девиация любого кода от прямой линии, проходящая через конечные точки передаточной функции. Конечные точки передаточной функции - нулевой масштаб, точка 0.5 LSB ниже первого изменения кода (от 000 ... 00 к 000 ... 01), и полный масштаб, точка 0.5 LSB выше последнего перехода кода (от 111 ... 10 к 111 ... 11). Ошибка выражается в количестве разрядов LSB.
Дифференциальная нелинейность. Differential Nonlinearity (DNL) это разница между измеренным и идеальным изменением 1 LSB между двумя соседними кодами DAC. Указанная DNL ±1 LSB максимум гарантирует монотонность характеристики.
Совместимость по выходу (Output Compliance). Этот параметр относится к выходному напряжению, которое может быть сгенерировано до максимального на выходе, когда DAC удовлетворяет спецификациям. Когда напряжение больше, чем указано для совместимости по выходу, AD9833 может не удовлетворять спецификациям, перечисленным в даташите.
Динамический диапазон без помех. Spurious-Free Dynamic Range (SFDR) - вместе с интересующей частотой га выходе устройства DDS присутствуют также гармоники основной частоты и образы этих частот. SFDR относится к самой большой побочной составляющей сигнала или гармонике, находящейся в интересующем диапазоне сигнала. Широкополосный SFDR дает амплитуду самой большой помехи или гармоники относительно амплитуды фундаментальной частоты у нуле к полосе Найквиста. Узкополосный SFDR дает подстройку самой большой гармоники или помехи в полосе частот ±200 кГц относительно основной частоты.
Среднее квадратическое значение сигнала. Root Mean Square (RMS) - характеристика сигнала переменного тока, которая определяет его мощность. Среднеквадратичное значение переменного тока равно величине постоянного тока, действие которого произведёт такую же работу в активной (резистивной) нагрузке за время периода.
Коэффициент общих гармонических искажений. Total Harmonic Distortion (THD) это соотношение rms суммы всех гармоник на выходе к rms основной частоты. Для AD9833 THD определяется по формуле:
Здесь:
V1 это rms амплитуды основной частоты. V2, V3, V4, V5 и V6 rms амплитуд гармоник от второй до шестой.
Соотношение сигнал/шум. Signal-to-Noise Ratio (SNR) это отношение значения rms сигнала, измеренное на выходе, к сумме всех других побочных спектральных компонентов ниже частоты Найквиста. Значение SNR выражается в децибелах.
Сквозное прохождение частоты тактирования. Clock Feedthrough - характеризует прохождение помехи со входа MCLK на аналоговый выход. Clock feedthrough относится амплитуде сигнала MCLK относительно основной частоты в выходном спектре сигнала AD9833.
[Теория функционирования]
Синусоидальные сигналы обычно представляют с точки зрения их амплитуды: a(t) = sin(ωt). Однако эти синусоидальные сигналы нелинейны, и их непросто генерировать, кроме как строить по кусочкам. С другой стороны, угловая информация по своей природе линейна. Таким образом, для определенной частоты угол фазы поворачивается на фиксированный угол для каждой единицы времени. Скорость изменения угла зависит от частоты сигнала по традиционному соотношению ω = 2πf.
Рис. 23. Синусоидальный сигнал и закон изменения его фазы.
Зная о том, что фаза синусоидального сигнала линейна на указанном интервале времени (периоде тактирования), можно определить поворот фазы для этого периода.
ΔPhase = ωΔt
Угол ω вычисляется как
ω = ΔPhase/Δt = 2πf
Если вычислить f и подставить опорную частоту для опорного периода (1/fMCLK = Δt), то получится формула
f = ΔPhase * fMCLK / 2π
AD9833 строит свой выходной сигнал на основе этого простого выражения. Простой чип DDS может реализовать это выражение тремя основными промежуточными узлами: управляемый через через цифровой интерфейс генератор (numerically controlled oscillator, NCO) и модулятор фазы, ПЗУ синуса (SIN ROM) и цифро-аналоговый преобразователь (digital-to-analog converter, DAC).
Каждый из этих узлов описан в разделе "Описание внутренней схемы AD9833".
[Описание внутренней схемы AD9833]
AD9833 это полностью интегрированный чип прямого цифрового синтеза (direct digital synthesis, DDS). Для его работы требуется одна опорная частота, один резистор не высогой точности, и развязывающие конденсаторы, чтобы его схема синтезировала синусоидальный сигнал с частотой до 12.5 МГц. Дополнительно чип может генерировать широкий диапазон простых и сложных схем модуляции. Эти схемы модуляции полностью реализованы в цифровом домене, позволяя точно и просто реализовать сложные алгоритмы модуляции, используя техники DSP.
Внутренняя схема AD9833 состоит из следующих основных частей: управляемый числами генератор (NCO), модуляторы частоты и фазы, SIN ROM, DAC и регулятор.
NCO плюс модулятор фазы. Эта часть схемы состоит из двух регистров выбора частоты, аккумулятора фазы, двух регистров смещения фазы и сумматора смещения фазы. Основной компоненты NCO это 28-битный аккумулятор фазы. Непрерывные по времени сигналы работают с диапазоном изменения фазы от 0 до 2π. Вне этого диапазона чисел синусоидальные функции повторяют сами себя периодически. Цифровая реализация ничем не отличается. Аккумулятор просто масштабирует диапазон значений фазы в многобитное цифровое слово. Аккумулятор фазы в AD9833 реализован как 28-разрядный счетчик. Таким образом в AD9833 период 2π = 228. Подобным образом понятие ΔPhase масштабируется в этот диапазон чисел:
0 < ΔPhase < 228 - 1
С этими подстановками предыдущее выражение получается в таком виде:
f = ΔPhase * fMCLK / 228
где 0 < ΔPhase < 228 - 1.
Вход аккумулятора фазы может быть выбран или из регистра FREQ0, или из регистра FREQ1, что управляется битом FSELECT. Генераторы NCO по сути формируют непрерывные по фазе сигналы, поэтому амплитуда на выходе остается неразрывной при переключениях между частотами.
Следуя за NCO, можно добавить смещение фазы, чтобы реализовать модуляцию фазы, используя 12-битные регистры фазы. Содержимое одного из этих регистров добавляется к самым старшим битам NCO. У AD9833 есть 2 регистра фазы; их разрешающая способность составляет 2π/4096.
SIN ROM. Чтобы сделать выход NCO полезным для использования, он должен быть преобразован в синусоидальное значение. Поскольку информация фазы прямо привязана к амплитуде, SIN ROM использует эту цифровую информацию фазы в качестве адреса в таблице, и таким способом преобразует информацию фазы в амплитуду. Хотя NCO имеет 28-битный аккумулятор фазы, выход NCO обрезается до 12 бит. С использованием полного разрешения аккумулятора фазы непрактично, и это не требуется, поскольку это потребовало бы таблицы из 228 записей. Требуется только такая разрешающая способность по фазе, чтобы исключить ошибки усечения из-за разрешающей способности меньше, чем разрешающая способность 10-битного DAC. Это требует, чтобы SIN ROM имело на 2 бита больше разрешающей способности, чем 10-битный DAC (т. е. 12 бит).
SIN ROM разрешается с использованием бита режима (D1) в регистре управления (см. таблицу 15).
DAC. Внутри AD9833 имеется 10-битный DAC (цифро-аналоговый преобразователь, ЦАП), работающий на основе источника тока с высоким сопротивлением. DAC получает цифровые данные из SIN ROM, и преобразует их в соответствующие аналоговые напряжения.
DAC сконфигурирован для работы в асимметричном режиме. Внешний нагрузочный резистор не требуется, потому что устройство имеет встроенный резистор 200 Ω. DAC генерирует выходное напряжение типичного уровня 0.6V от пика до пика.
Регулятор. VDD предоставляет питание, требуемое для аналоговой части и цифровой части AD9833. Это питание может иметь значение напряжения от 2.3 V до 5.5 V.
Внутренняя цифровая секция AD9833 работает от напряжения 2.5V. Внутренний встроенный регулятор понижает напряжение, прикладываемое к VDD, до уровня 2.5V. Когда внешнее прикладываемое к VDD напряжение меньше или равно 2.7V, выводы CAP/2.5V и VDD должны быть соединены друг с другом, это пропускает использование встроенного регулятора.
[Функциональное описание]
Последовательный интерфейс. AD9833 подключается через стандартный 3-проводный последовательный интерфейс, совместимый со стандартами SPI, QSPI™, MICROWIRE® и интерфейсами цифровых процессоров DSP.
Данные загружаются в устройство как 16-битное слово под управлением последовательных тактов вывода SCLK. Форма сигналов интерфейса и диаграммы времени показаны на рис. 4.
Вход FSYNC работает по уровню как синхронизация фрейма и разрешающий сигнал интерфейса (chip enable). Данные могут быть переданы в устройство только если FSYNC находится в состоянии лог. 0. Для запуска последовательной передачи FSYNC нужно перевести в лог. 0, соблюдая минимальное время установки после спада FSYNC, интервал между спадом FSYNC до спада SCLK, время t7. После того, как FSYNC перешел в лог. 0, последовательные данные вдвигаются во входной регистр сдвига устройства по спадам уровня (от лог. 1 к лог. 0) сигнала SCLK для 16 тактовых импульсов. FSYNC может перейти в лог. 1 после 16-го спада SCLK, с соблюдением минимального времени между спадом SCLK и нарастанием FSYNC, время t8. Альтернативно FSYNC можно удерживать в лог. 0 на кратное 16 количество импульсов SCLK, и затем перевести FSYNC в лог. 1 после окончания передачи данных. Таким способом можно загрузить в микросхему непрерывный поток 16-битных слов, в то время как FSYNC удерживается в состоянии лог. 0; FSYNC перейдет в лог. 1 только после 16-того спада SCLK последнего загруженного слова.
Между отдельными операциями записи импульсы SCLK могут идти непрерывно, или они могут быть в любом состоянии - лог. 1 или лог. 0. В любом случае уровень на SCLK должен быть в лог. 1, когда сигнал FSYNC переводится в лог. 0 (t11).
Пример того, как программировать AD9833, см. в апноуте AN-1070 на сайте компании Analog Devices.
Питание AD9833. Алгоритм на рис. 26 показывает принцип работы с AD9833. Когда AD9833 включается подачей питания, она должна быть сброшена. Это сбрасывает внутренние регистры в 0, чтобы установить аналоговый выход в среднее состояние.
Чтобы избежать случайных сигналов на выходе DAC при инициализации AD9833, бит сброса должен быть установлен в 1, пока микросхема не будет готова генерировать выходной сигнал. Сброс не сбрасывает регистры фазы, частоты или управления. Эти регистры будут содержать недопустимые данные, и поэтому должны быть установлены пользователем в определенное значение. Бит сброса должен быть тогда установлен в 0, чтобы на выходе появился генерируемый сигнал. Данные появятся на выходе DAC через 7 или 8 тактов MCLK после того, как бит сброса будет установлен в 0.
Период латентности (задержка). Задержка здесь связана с асинхронной операцией записи в AD9833. Если в выбранный регистр частоты или фазы загружено новое слово, то имеется задержка 7 или 8 тактов MCLK перед тем, как поменяется сигнал на аналоговом выходе. Какая будет задержка - 7 или 8 циклов - зависит от позиции фронта нарастания MCLK, когда данные загружаются в регистр назначения.
Регистр управления. AD9833 содержит 16-битный регистр управления, который позволяет пользователю конфигурировать работу AD9833. Все биты управления, кроме бита режима (mode bit) анализируются по внутреннему спаду сигнала MCLK.
В таблице 6 описаны отдельные биты регистра управления. Различные функции и разные опции выхода AD9833 описаны более подробно в секции "Регистры частоты и фазы".
Чтобы оповестить AD9833, что содержимое регистра управления поменялось, биты D15 и D14 должны быть установлены в 0, как показано в таблице 5.
Таблица 5. Биты регистра управления.
D15
D14
D13 . . . D0
0
0
Биты управления
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
B28
HLB
FSELECT
PSELECT
0
RESET
SLEEP1
SLEEP12
OPBITEN
0
DIV2
0
MODE
0
Рис. 24. Функции бит управления.
Таблица 6. Описание бит в регистре управления.
Бит
Имя
Функция
D13
B28
Для загрузки полного слова в любой из регистров частоты требуются 2 операции записи. B28 = 1 позволяет загрузить полное слово в регистр частоты двумя следующими друг за другом записями. Первая запись содержит 14 LSB (14 младших бит) слова частоты, и следующая запись содержит 14 MSB (14 старших бит). Первые 2 бита каждого 16-битного слова определяют тот регистр частоты, в который должно быть загружено слово, и таким образом, эти первые 2 бита должны быть одинаковыми для обоих следующих друг за другом записей. См. таблицу 8 для определения подходящего адреса. Запись в регистр частоты происходит после того, как будут загружены оба слова; таким образом, регистр никогда не получит промежуточную величину. Пример полной 28-битной записи показан в таблице 9. Когда B28 = 0, 28-битный регистр частоты работает как два 14-битных регистра, один из которых содержит 14 MSB, и другой 14 LSB. Это означает, что 14 MSB слова частоты может быть поменяно независимо от 14 LSB, и наоборот. Чтобы поменять 14 MSB или 14 LSB делается одна запись по нужному адресу частоты. Управляющий бит D12 (HLB) информирует AD9833 какие должны быть изменены биты: 14 MSB или 14 LSB.
D12
HLB
Этот бит управления позволяет загрузить биты MSB или биты LSB регистра частоты, игнорируя при этом остальные 14 бит. Это полезно, если не требуется полная 28-битная разрешающая способность. Бит HLB используется вместе с битом D13 (B28). Этот управляющий бит показывает, куда попадут загружаемые 14 бит - в 14 MSB или 14 LSB адресованного регистра частоты. D13 (B28) должен быть установлен в 0, чтобы можно было раздельно поменять биты MSB и LSB слова частоты. Когда D13 (B28) = 1, этот бит управления игнорируется. HLB = 1 позволяет записать 14 MSB адресованного регистра частоты, и соответственно HLB = 0 позволяет записать 14 LSB адресованного регистра частоты.
D11
FSELECT
Бит FSELECT определяет, какой из регистров используется в аккумуляторе фазы - FREQ0 или FREQ1.
D10
PSELECT
Бит PSELECT определяет, данные какого из регистров PHASE0 или PHASE1 добавляются к выходу аккумулятора фазы.
D9
Зарезервировано
Этот бит должен быть установлен в 0.
D8
Reset
Reset = 1 сбрасывает внутренние регистры в 0, что соответствует появлению на выходе среднего уровня. Reset = 0 запрещает сброс. Эта функция подробнее объяснена в таблице 13.
D7
SLEEP1
Когда SLEEP1 = 1, действие внутренней частоты MCLK запрещается, и выход DAC остается в своем текущем состоянии, потому что NCO больше не накапливает фазу. Когда SLEEP1 = 0, MCLK разрешается. Эта функция описана в таблице 14.
D6
SLEEP12
SLEEP12 = 1 выключает встроенный DAC (ЦАП). Это полезно, когда AD9833 используется в качестве вывода старшего бита данных DAC (формирование прямоугольного сигнала на выходе). SLEEP12 = 0 подразумевает, что DAC активен. Эта функция описана в таблице 14.
D5
OPBITEN
Функция этого бита вместо с битом D1 (mode, режим) управляет, что будет появляться на выходе VOUT. Это объяснено в таблице 15. Когда OPBITEN = 1, выход DAC не выводится на ножку VOUT, вместо этого частота смены состояния бита MSB (старший бит) данных DAC (или частота MSB/2) появляется на выходе VOUT. Это полезно использовать в качестве формирования тактовой частоты (грубого прямоугольного сигнала). Бит DIV2 управляет, подключен ли дополнительный делитель частоты MSB. Когда OPBITEN = 0, выход DAC подключается к VOUT. Бит mode (D1) определяет, какая будет форма сигнала на выходе - синусоидальная или треугольная.
D4
Зарезервировано
Этот бит должен быть установлен в 0.
D3
DIV2
DIV2 используется вместе с битом D5 (OPBITEN). Он описан подробнее в таблице 15. Когда DIV2 = 1, старший бит данных DAC (MSB) напрямую выводится на вывод VOUT. Когда DIV2 = 0, на выводе VOUT появляется прямоугольная частота MSB/2.
D2
Зарезервировано
Этот бит должен быть установлен в 0.
D1
Mode
Этот бит используется вместе с битом OPBITEN (D5). Он управляет, какой сигнал появляется на выводе VOUT, когда для формирования сигнала используется выход DAC. Этот бит должен быть установлен в 0, если управляющий бит OPBITEN = 1. Это объяснено в таблице 15. Когда mode = 1, SIN ROM пропускается, в результате на выходе DAC появляется треугольная форма сигнала. Когда mode = 0, SIN ROM используется для преобразования информации фазы в информацию амплитуды, в результате чего на выходе появляется синусоидальный сигнал.
D0
Зарезервировано
Этот бит должен быть установлен в 0.
Регистры частоты и фазы. AD9833 два регистра частоты и 2 регистра фазы, которые описаны в таблице 7.
Таблица 7. Регистры частоты и фазы.
Регистр
Размер
Описание
FREQ0
28 бит
Регистр частоты 0. Когда бит FSELECT=0, этот регистр определяет выходную частоту как фракцию частоты MCLK.
FREQ1
28 бит
Регистр частоты 1. Когда бит FSELECT=1, этот регистр определяет выходную частоту как фракцию частоты MCLK.
PHASE0
12 бит
Регистр смещения фазы 0. Когда бит PSELECT=0, содержимое этого регистра добавляется к выходу аккумулятора фазы.
PHASE1
12 бит
Регистр смещения фазы 1. Когда бит PSELECT=1, содержимое этого регистра добавляется к выходу аккумулятора фазы.
На аналоговом выходе AD9833 будет частота
fMCLK/228 * FREQREG
где FREQREG это значение, загруженное в выбранный регистр частоты. Этот сигнал по фазе сдвинут на
2π/4096 * PHASEREG
где PHASEREG это значение, содержащееся в выбранном регистре фазы. Должно быть уделено вниманию взаимосвязи между выбранной выходной частотой и опорной частотой, чтобы избежать нежелательных аномалий на выходе.
На рис. 28 показан алгоритм подпрограммы для записи регистров частоты и фазы AD9833.
Когда записывается регистр частоты, биты D15 и D14 дают адрес регистра частоты.
Таблица 8. Биты регистра частоты.
D15
D14
D13
D0
0
1
Старшие 14 бит регистра FREQ0
LSB
1
0
Старшие 14 бит регистра FREQ1
LSB
Если пользователь хочет поменять все содержимое регистра частоты, необходимы 2 следующие друг за другом операции записи по одному и тому же адресу, потому что регистры частоты имеют разрядность 28 бит. Первая запись содержит 14 младших бит (LSB), и вторая запись содержит 14 старших бит (MSB). Для этого режима работы бит управления B28 (D13) должен быть установлен в 1. Пример 28-битной записи показан в таблице 9.
Таблица 9. Запись 0xFFFC000 в регистр FREQ0.
Данные SDATA
Результат ввода слова
0010 0000 0000 0000
Запись слова управления: (D15, D14) = 00, B28 (D13) = 1, HLB (D12) = X
В некоторых приложениях пользователю не нужно изменять все 28 бит регистра частоты. При грубой настройке нужно поменять только 14 MSB, в то время как при тонкой настройке требуется поменять только 14 LSB. Путем установки управляющего бита B28 (D13) в лог. 0, 28-битный регистр частоты работает как два 14-битных регистра, в одном из которых содержатся 14 MSB, и в другом содержатся 14 LSB. Это означает, что 14 бит MSB слова частоты можно поменять независимо от 14 бит LSB, и наоборот. Бит HLB (D12) в регистре управления идентифицирует, какие из этих 14 бит будут изменены. Примеры этого показаны в таблицах 10 и 11.
Таблица 10. Запись 0x3FFF в 14 младших бит (LSB) регистра FREQ1.
Данные SDATA
Результат ввода слова
0000 0000 0000 0000
Запись слова управления: (D15, D14) = 00, B28 (D13) = 0, HLB (D12) = 0, поэтому будут записаны биты LSB
Когда записывается регистр фазы, биты D15 и D14 устанавливаются в 11. Бит D13 идентифицирует, какой регистр фазы будет загружен.
Таблица 12. Биты регистра фазы.
D15
D14
D13
D12
D11
D0
1
1
0
X
12 старших бит (MSB) регистра PHASE0
LSB
1
1
1
X
12 старших бит (MSB) регистра PHASE1
LSB
Функция сброса. Эта функция сбросит внутренние регистры в 0, при этом аналоговый выход перейдет в среднее состояние. Сброс не сбрасывает регистры фазы, частоты или управления. Когда на микросхему AD9833 подается питание, она должна быть сброшена. Чтобы сбросить AD9833, установите бит сброса (reset bit) в лог. 1. Чтобы вывести микросхему из сброса, установите этот бит в лог. 0. Сигнал появится на выходе DAC через 8 тактов MCLK после того, как бит сброса будет установлен в 0.
Таблица 13. Применение функции сброса (влияние значения бита Reset).
Reset
Результат
0
Сброс не прикладывается
1
Сброс внутренних регистров
Функция сна. Секции AD9833, которые не используются, могут быть выключены для минимизации потребления энергии. Это осуществляется функцией сна (sleep). Узлы микросхемы, которые могут быть отключены, это внутреннее тактирование и DAC. Биты, требуемые для задействования функции сна, описаны в таблице 14.
Таблица 14. Применение функции сна (влияние состояния битов SLEEP1 и SLEEP12).
SLEEP1
SLEEP12
Результат
0
0
Нет состояния Power Down, микросхема полностью активна
0
1
Выключен DAC
1
0
Запрещено внутреннее тактирование (MCLK не действует)
Это полезно, только когда AD9833 используется для вывода старшего разряда данных DAC. В таком случае DAC не нужен; таким образом, он может быть выключен для снижения энергопотребления.
Когда внутреннее тактирование AD9833 запрещено, выход DAC остается в своем текущем состоянии, потому что NCO больше не накапливает фазу. Новая частота, фаза и управляющее слово могут быть записаны в микросхему, когда активен бит управления SLEEP1. Такты синхронизации все еще остаются активными, это означает, что выбранные регистры частоты и фазы можно изменить с помощью бит управления. Установка бита SLEEP1 в лог. 0 разрешает тактирование MCLK. Любые изменения, сделанные в регистрах, когда SLEEP1 был активен (в лог. 1), будут видны на выходе после периода латентности.
Выход VOUT. AD9833 предоставляет различный вывод сигнала, все эти сигналы появляются на выводе VOUT. Выбранная форма сигнала определяется старшим битом (MSB) данных DAC: вывод синусоиды или вывод треугольника. Бит OPBITEN (D5) и бит режима (D1) регистра управления используются для выбора, какой вывод доступен из AD9833.
MSB данных DAC может быть выведен из AD9833. Путем установки бита управления OPBITEN (D5) в лог. 1, старший бит данных DAC появляется на выводе VOUT. Это полезно в качестве грубого источника тактовой частоты. Частоту этого прямоугольного сигнала также можно поделить на 2 перед его выводом. Бит DIV2 (D3) регистра управления управляет частотой на выходе VOUT, будет она поделена на 2 или нет.
SIN ROM используется для преобразования информации о фазе из регистров частоты и фазы в информацию амплитуды, которая в результате дает на выходе синусоидальный сигнал. Чтобы получить синусоидальный сигнал на выходе VOUT, установите бит режима (D1) в лог. 0, и бит OPBITEN (D5) в лог. 0.
SIN ROM может быть пропущено, и при этом обрезанный цифровой выход из NCO будет переправлен в DAC. Выходной сигнал больше не будет синусоидальным. DAC будет формировать 10-битную линейную треугольную функцию. Чтобы получить треугольную форму сигнала на выводе VOUT, установите бит режима (D1) в лог. 1.
Обратите внимание, что бит SLEEP12 должен быть установлен в 0 (т. е. работа DAC разрешена).
Таблица 15. Форма выходного сигнала на выводе VOUT (влияние состояния бит OPBITEN, Mode, DIV2).
OPBITEN
Mode
DIV2
Сигнал на выходе VOUT
0
0
X1
Синусоидальный сигнал
0
1
X1
Треугольный сигнал
1
0
0
На выходе появляется частота изменения старшего бита на входе DAC (MSB).
1
0
1
На выходе появляется частота изменения старшего бита на входе DAC, поделенная на 2 (MSB/2).
1
1
X1
Зарезервировано
Примечание 1: X = не имеет значения.
Рис. 25. Треугольный выходной сигнал.
[Информация по применению]
Из-за разных опций выходного сигнала AD9833 может быть сконфигурирована для широкого спектра приложений.
Одна из областей - приложения модуляции. Может быть реализована простая модуляция, такая как FSK (по русски это частотная манипуляция). Более сложные схемы модуляций, такие как GMSK (Гауссовская частотная модуляция с минимальным сдвигом) and QPSK (квадратурная фазовая манипуляция), также могут быть реализованы на AD9833.
В приложении FSK два регистра частоты загружаются разными значениями. Одна частота представляет частоту пробела (space frequency), в то время как другая представляет частоту маркера (mark frequency). С помощью программной манипуляции состоянием бита FSELECT в регистре управления пользователь может модулировать частоту несущей этими двумя значениями.
У AD9833 есть 2 регистра фазы, которые позволяют реализовать модуляцию PSK. При манипулировании сдвигом фазы получается модуляция PSK, при этом фаза меняется на величину, связанную с битовым потоком, поступающим на вход модулятора.
AD9833 также подходит для приложений генератора сигналов. Из-за того, что MSB данных DAC доступен на выводе VOUT, устройство может быть использовано для генерации прямоугольного сигнала.
С малым энергопотреблением микросхема подходит для приложений, где она может использоваться как локальный генератор в переносных устройствах.
Заземление и разводка печатной платы. Печатная плата (printed circuit board, PCB), на которой размещена AD9833, должна быть разработана так, чтобы аналоговая и цифровая секции цепей были разделены и ограничены определенными областями платы. Это упрощает использование раздельных заливок шиной земли (ground plane). Техника разводки с минимальным тралением меди обычно лучше всего подходит для заливок, потому что дает лучшее экранирование. Цифровые и аналоговые заливки должны быть соединены друг с другом только в одном месте. Если AD9833 является единственным устройством, требующим соединения AGND с DGND, то их заливки должны подключаться к цепям AGND и DGND на выводах AD9833. Если AD9833 находится в системе, где несколько устройств требуют соединений AGND с DGND, то соединение должно быть сделано в одной точке, сформированной в виде звезды, которая должна находиться как можно ближе к AD9833.
Избегайте прокладки цифровых сигналов под микросхемой AD9833, поскольку они вызывают наводки на аналоговые сигналы. Аналоговой заливке следует позволить проходить под AD9833, чтобы избежать наводок шума. Линии питания, приходящие к AD9833, должны использовать по возможности широкие проводники, чтобы уменьшить сопротивление цепей тока и снизить эффекты пульсаций на линии питания. Быстро переключающиеся сигналы, такие как такты, должны быть экранированы цифровой землей, чтобы избежать наводок шума на другие секции платы.
Избегайте пересечения аналоговых и цифровых сигналов. Проводники на противоположных сторонах платы должны находиться друг к другу под прямым углом. Это снижает эффекты перекрестных помех между сигналами через плату. Микрополосковая техника является безусловно лучшей, но она не всегда возможна на двусторонней плате. В такой технике сторона компонентов выделена целиком (или почти целиком) под заливки медью, и все сигналы стараются разместить на противоположной стороне.
Важна хорошая блокировка конденсаторами цепей питания. К AD9833 должны быть подключены блокировочные керамические конденсаторы 0.1 мкф параллельно танталовым конденсаторам на 10 мкф. Чтобы достичь наибольшей эффективности развязывающих конденсаторов, они должны быть размещены максимально близко к корпусу микросхемы.
Рис. 26. Алгоритм инициализации и работы AD9833.
Рис. 27. Алгоритм инициализации.
Рис. 28. Алгоритм операций записи данных.
[Подключение к микроконтроллеру]
AD9833 снабжена стандартным последовательным интерфейсом, что позволяет подключить её напрямую к любому микроконтроллеру. Устройство использует внешнее тактирование для записи данных или информации управления. Такты для данных могут быть с максимальной частотой 40 МГц. Такты данных могут следовать непрерывно, или могут иметь статический уровень (0 или 1) в неактивном состоянии между операциями записи. Когда данные или управляющая информация записываются в AD9833, сигнал FSYNC переводится в лог. 0 и удерживается в таком состоянии, пока в AD9833 не будут записаны 16 данных. Сигнал FSYNC задает фреймы информации по 16 бит, загружаемые в AD9833.
Интерфейс 68HC11/68L11. На рис. 29 показан последовательный интерфейс между AD9833 и микроконтроллером 68HC11/68L11. Микроконтроллер сконфигурирован как мастер установкой в лог. 1 бита MSTR регистра SPCR. Эта установка предоставляет тактовый сигнал данных на вывод SCK; выход MOSI поставляет последовательные данные сигнала SDATA. Поскольку у микроконтроллера нет специального выделенного вывода для сигнала синхронизации фрейма, то сигнал FSYNC получается от ножки порта GPIO (PC7). Условия настройки для корректной работы интерфейса следующие:
• SCK удерживается в лог. 1 между операциями записи (CPOL = 0) • Данные MOSI достоверны на спаде сигнала SCK (CPHA = 1)
Когда данные передаются в AD9833, сигнал FSYNC переводится в лог. 0 (ножкой порта PC7). Последовательные данные из 68HC11/68L11 передаются по байтам (2 посылки по 8 бит), 8 перепадов тактов происходят в одном цикле передачи. Данные передаются старшим битом (MSB) вперед. Для загрузки данных в AD9833 ножка PC7 удерживается в лог. 0 после передачи 8 бит, и выполняется вторая операция записи в AD9833. Только после второй посылки из 8 бит сигнал FSYNC должен быть переведен в лог. 1. Таким способом формируется фрейм из 16 бит данных.
Рис. 29. Подключение 68HC11/68L11 к интерфейсу AD9833.
Интерфейс 80C51/80L51. На рис. 30 показан последовательный интерфейс между AD9833 и микроконтроллером 80C51/80L51. Микроконтроллер работает в Mode 0, так что TxD чипа 80C51/80L51 управляет сигналом SCLK AD9833, и ножка RxD управляет сигналом данных SDATA. Сигнал FSYNC получается от ножки GPIO P3.3.
Рис. 30. Подключение 80C51/80L51 к интерфейсу AD9833.
Когда данные передаются в AD9833, порт P3.3 удерживается в лог. 0. 80C51/80L51 передает данные в по 8 бит, так что только 8 перепадов тактов появляются в каждом цикле. Чтобы загрузить оставшуюся порцию из 8 бит в AD9833, порт P3.3 удерживается в лог. 0 после передачи первой порции из 8 бит, и инициируется вторая операция записи для передачи второго байта данных. P3.3 переводится в лог. 1 после завершения второй операции записи. Сигнал SCLK должен удерживаться в лог. 1 между двумя операциями записи.
80C51/80L51 выводит последовательные данные в формате, когда LSB идет первым. Но AD9833 принимает первым бит MSB (первые 4 MSB содержат информацию управления, следующие 4 бита содержат адрес, и оставшиеся 8 бит LSB содержат данные, когда они записываются в регистр назначения). Таким образом, подпрограмма передачи должна учитывать это обстоятельство, чтобы перетасовать порядок следования бит так, чтобы MSB выводился первым.
Интерфейс DSP56002. Рис. 31 показывает интерфейс между AD9833 и DSP56002. DSP56002 конфигурируется для нормального асинхронного режима работы с управляемым внутренним тактированием (SYN = 0, GCK = 1, SCKD = 1). Сигнал фрейма генерируется внутри микроконтроллера (SC2 = 1), передачи настраиваются на длину 16 бит (WL1 = 1, WL0 = 0), и сигнал синхронизации фрейма соответствует 16 битам (FSL = 0). Сигнал синхронизации фрейма доступен на выводе SC2, но он должен быть проинвертирован перед тем, как подать его на AD9833. Интерфейс с DSP56000/DSP56001 подобен интерфейсу с DSP56002.
Рис. 31. Подключение DSP56002 к интерфейсу AD9833.
Интерфейс с AVR. На рисунке ниже показан пример подключения AD9833 к микроконтроллеру ATmega32A. В качестве канала связи используется интерфейс SPI, сигнал FSYNC управляется аппаратно, с помощью порта GPIO PB1.
Оценочная плата (AD9833 evaluation board) позволяет разработчикам попробовать в работе высокопроизводительный модулятор AD9833 DDS с минимальными затратами усилий.
[Платформа демонстрации]
Системная платформа разработки (System demonstration platform, SDP) это аппаратура и оценочное инструментальное программное обеспечение, которое используется вместе с оценочными платами разработчика. Плата SDP основана на процессоре Blackfin® ADSP-BF527 с USB-подключением к PC через высокоскоростной порт USB 2.0.
Имейте в виду, что плата SDP продается отдельно от оценочной платы AD9833.
[Подключение AD9833 через SPORT]
Плата SDP компании Analog Devices имеет последовательный порт SPORT, который используется для управления входами последовательного интерфейса AD9833. Соединения показаны на рис. 32.
Рис. 32. Подключение SDP к интерфейсу AD9833.
[EVALUATION KIT]
Оценочный кит (DDS evaluation kit) включает готовую, проверенную печатную плату с AD9833. Схема оценочной платы показана на рис. 34 и 35.
Программное обеспечение, поставляемое вместе с оценочным китом, позволяет пользователю просто программировать AD9833 (см. рис. 33). Программное обеспечение запускается на любом IBM-совместимом PC с установленной системой Microsoft® Windows® (включая Windows 7). Программа совместима как с 32-битной, так и с 64-битной операционными системами.
Больше информации об оценочном программном обеспечении можно получить на CD и на страничке продукта AD9833.
[Кварцевые генераторы против внешнего тактирования]
AD9833 может работать с основной опорной частотой до 25 МГц. На оценочной плате имеется установленный генератор 25 МГц. Этот генератор может быть удален, и если это требуется, то к микросхеме может быть подключен внешний тактовый сигнал CMOS. Как вариант, могут быть следующие варианты обычного генератора:
• Генераторы AEL 301-Series, компания AEL Crystals • Генераторы SG-310SCN, компания Epson Electronics
[Питание]
Питание для оценочной платы AD9833 может быть предоставлено через коннектор USB или подано снаружи через подключения к выводам. Провода питания должны быть повиты друг с другом, чтобы уменьшить помехи от наводок.
[Принципиальные схемы]
Рис. 34. Схема оценочной платы AD9833.
Рис. 35. Схема коннектора SDP.
[Разводка печатной платы]
Рис. 36. AD9833 Evaluation Board, сторона компонентов.
Рис. 39. 10-выводный корпус Mini Small Outline Package (MSOP, RM-10). Размеры указаны в миллиметрах (совместим со стандартами JEDEC MO-187-BA).
[Руководство по выбору при покупке]
Модель1,2,3
Диапазон температур
Корпус
Опция корпуса
Брендинг
AD9833BRM
−40°C .. +105°C
10-выводный MSOP
RM-10
DJB
AD9833BRM-REEL
−40°C .. +105°C
10-выводный MSOP
RM-10
DJB
AD9833BRM-REEL7
−40°C .. +105°C
10-выводный MSOP
RM-10
DJB
AD9833BRMZ
−40°C .. +105°C
10-выводный MSOP
RM-10
D68
AD9833BRMZ-REEL
−40°C .. +105°C
10-выводный MSOP
RM-10
D68
AD9833BRMZ-REEL7
−40°C .. +105°C
10-выводный MSOP
RM-10
D68
AD9833WBRMZ-REEL
−40°C .. +105°C
10-выводный MSOP
RM-10
D68
EVAL-AD9833SDZ
Evaluation Board
Примечания:
1 Z = микросхема совместима со стандартом RoHS. 2 W = квалифицировано для автомобильных приложений (Automotive). 3 Оценочная плата для AD9833 требует для запуска плату SDP, которая продается отдельно.
Вариант поставки AUTOMOTIVE. Модель AD9833WBRMZ-REEL доступна с контролем производства для поддержки качества и надежности автомобильных (automotive) приложений. Обратите внимание, что эта automotive модель может иметь спецификации, отличающиеся от коммерческих моделей; таким образом, разработчики должны тщательно заново просмотреть секцию спецификаций этого даташита. Только продукция, сертифицированная как automotive, представлена для использования в автомобильных приложениях. Свяжитесь с локальным представителем компании Analog Devices для получения информации о закупке, и получения специальных отчетов надежности микросхем для автомобильных приложений (Automotive Reliability reports).
[Самодельный генератор сигналов]
За несколько дней собрал генератор сигналов на основе платки, купленной на aliexpress, и макетной платы AVR-USB-MEGA16. Генератор имеет LCD-индикатор BC1601A1 (16x1) и простой интерфейс управления, состоящий из энкодера и кнопки.
Что умеет генератор:
• Можно менять частоту в диапазоне от 0 до 12500000 Гц с дискретностью 1 Гц. • Можно изменять форму сигнала - синус, треугольник, прямоугольник. • Можно регулировать амплитуду выходного сигнала. Для синусоидального и треугольного сигнала размах выходного напряжения (от пика до пика) регулируется от 0 до 3.6V с шагом 14 mV. Для прямоугольного сигнала размах выходного напряжения регулируется от 0 до 5.2V с шагом 0.124V. • Энергонезависимая память, где хранятся настройки на 10 запрограммированных частот (вместе с формой сигнала и установленным напряжением). • Генератор можно перепрограммировать через USB. • Питание генератора может осуществляться через USB или от источника постоянного тока от 9 до 15V. Потребляемый ток порядка 170..180 mA.
Был взят первый попавшийся металлический корпус. Переднюю панель сделал из фольгированного текстолита.
Плату AD9833, макетку AVR-USB-MEGA16, стабилизатор 7805 закрепил на металлическом корпусе. К передней панели с помощью термоклея приклеил LCD-индикатор, энкодер и кнопку.
В задней крышке вырезал отверстия для джека питания и коннектора USB.
Ниже на рисунке показана общая схема соединений (без стабилизатора питания +5V).
Алгоритм работы генератора:
Основное меню
1. После включения питания микроконтроллер считывает настройки из EEPROM, и выводит на экран частоту текущей выбранной настройки (генератор начинает работать на частоте одной из 10 запрограммированных ячеек памяти). На экран выводится форма сигнала, номер настройки и выходная частота.
Примечание: настройки защищены в памяти контрольной суммой CRC16. Если по какой-то причине контрольная сумма не корректна (например, это может быть, когда в чистый чип AVR только что была записана программа) то настройки EEPROM инициализируются значениями по умолчанию.
2. Поворот энкодера меняет отображение выходной частоты на отображение выходного напряжения, и наоборот.
Выбор параметра настройки
3. Короткое нажатие на ручку энкодера включает выбор режима редактирования. Поворот ручки энкодера в этом режиме перемещает курсор (мигающий черный прямоугольник) по экрану, позволяя выбрать элемент для редактирования. Можно выбрать редактирование формы сигнала (синус, треугольник, прямоугольник), номера настройки (от 0 до 9) и частоты или напряжения (последнее зависит от того, что отображалось на экране).
Двойное нажатие на ручку энкодера возвращает режим основного меню.
Настройка параметра
4. Повторное короткое нажатие на ручку энкодера включает редактирование выбранного параметра. При этом мигающий прямоугольник курсора меняется на подчеркивание редактируемой позиции, а поворот ручки энкодера меняет значение параметра (форма сигнала, номер настройки, частота или напряжение). Изменения немедленно отображаются на экране LCD и одновременно появляются на выходе генератора.
Если еще раз коротко нажать на ручку энкодера, то произойдет обратный переход в режим выбора редактируемого параметра. Двойное нажатие на ручку энкодера возвращает режим основного меню.
Сохранение настроек
5. Сделанные изменения настроек можно сохранить в EEPROM, чтобы они вступили в действие при следующем включении питания. Для этого нужно коротко нажать на красную кнопку. Прозвучит звуковой сигнал, настройки сохранятся, и на экран будет выведено соответствующее сообщение.
Запуск USB-загрузчика
6. Прибор можно перепрограммировать с помощью загрузчика USBasp, который традиционно записан во все макетные платы AVR-USB-MEGA16. Запустить загрузчик можно двумя способами:
- Выключить питание прибора, выдернуть шнур USB. Нажмите и удерживайте в нажатом положении ручку энкодера, и подключите прибор к компьютеру через USB. Отпустите ручку энкодера. Загрузчик USBasp будет ждать записи прошивки, дальше нужно действовать по инструкции, опубликованной в статье [3].
- Подключите прибор через USB к компьютеру. Нажмите и удерживайте красную кнопку. Дождитесь подсказки запуска загрузчика, нажмите и удерживайте ручку энкодера, отпустите красную кнопку, затем отпустите кнопку энкодера. Загрузчик USBasp будет ждать записи прошивки, дальше нужно действовать по инструкции, опубликованной в статье [3].
Примечание: загрузчик был незначительно модифицирован, чтобы он запускался не от установленной перемычки, а от нажатой кнопки энкодера. Просто опрашивается другая ножка GPIO микроконтроллера - PD5 вместо PB5.
Исходный код и документацию можно скачать по ссылке [5].
Комментарии
ad9833_send(reg_reg | (0x3FFF&(uint16_t)(freq_reg >> 16)));
По-моему, здесь 2 нужных бита не учитываются, как следствие частота будет не та, что хотим.
Вроде так должно быть:
ad9833_send(reg_reg | (0x3FFF&(uint16_t)(freq_reg)) );
ad9833_send(reg_reg | (0x3FFF&(uint16_t)(freq_reg >> 14)));
RSS лента комментариев этой записи