После того, как была проверена работоспособность модуля на AD9851, мною было принято решение попробовать уместить два генератора в одном: генератор синуса на основе AD9851 с частотой от 1 Гц до 90 МГц (теоретически, реально же, как заявлено, около 70 МГц) и НЧ-генератор DDS сигналов произвольной формы с частотой от 1 Гц до 100 кГц.
Кнопку Run/stop решено было перенести на тот же порт управления клавиатурой и в ту же часть программы – добавился один диод, но ушел один резистор. Светодиод и пьезокерамический буззер объединил на одну ногу (если применять другой тип буззера, то лучше использовать буферный транзистор через развязывающий конденсатор). Испытания показали, что для формирования сигнала Reset для AD9851 вполне подходит RC-цепочка – экономим еще одну ножку процессора. В итоге у нас остается порт D для формирования DDS 8-ми битного сигнала низкой частоты и три ноги порта С для последовательного управления модулем DDS AD9851. Схема приведена ниже:
Сдвоенный операционный усилитель общего назначения используется как выходной буфер для формирования сигнала произвольной формы (верхняя по схеме половинка) и в качестве цифрового выхода (нижняя половинка). Питание операционника ±12 Вольт (обусловлено наличием у меня именно такого питания в корпусе).
Плата разведена под корпус TQFP с шириной дорожек 0,32, резисторы для матрицы R-2R отобраны из ряда 10 кОм типоразмер 1206, остальные пассивные элементы в корпусах 1206 и 0805. Кварц на 12 МГц был найден в закромах – мелкий в корпусе SMD и на плате отмечен тремя круглыми контактными площадками с левой стороны:
В принципе, подойдет любой из номинала от 8 МГц до 16 МГц – надо только в программе выставить нужную частоту. Резисторы номиналом на схеме 5 кОм (с левого края 7 шт. получены параллельным соединением резисторов по 10 кОм – запаяны бутербродом). На плате присутствуют 4 перемычки 1206, переменный резистор для регулировки контрастности дисплея после замеров заменен двумя постоянными резисторами. Ввиду относительной простоты схемы на плате номера элементов и выводов не подписаны – разобраться несложно. С правой стороны микросхемы выведены три контактные площадки для аналоговых ножек – опорника и двух входов АЦП – на всякий случай. Плата получилась размером 45*36 мм., изготавливалась методом ЛУТ. Фотография готовой платы приведена ниже:
Теперь о программе. За исходник была применена программа итальянского коллеги, упоминавшаяся в части первой статьи про DDS. Я убрал большинство итальянских слов, поменяв их на более понятные английские аналоги, и изменил принцип вывода данных на дисплей. Основное тело программы (цикл DO LOOP) состоит из обращения к подпрограммам вывода на дисплей, опроса клавиатуры и навигации по дисплею). Для каждого раздела меню используется своя подпрограмма назначения кнопок, ну и при желании, пользователь может переделать их под свои пожелания. В качестве вывода данных на дисплей используется два строковых массива длиной по 16 знаков, в каждом из которых я меняю значения – цифры, буквы и т.п. Текущая позиция обозначается мигающим курсором.
НЧ генератор DDS на данный момент формирует 8 сигналов: стандартных – синус, меандр, пила, треугольник и не очень – псевдошум, функцию типа cos(x) * sin(5x), затухающие волны синуса и прямоугольный сигнал с изменяющейся скважностью с шагом в ≈1%. Последние три таблицы были случайно найдены в недрах Интернета и вставлены для коллекции – при желании их можно поменять на что-то более полезное. Прямоугольный сигнал с изменяющейся скважностью – более полезная вещь и под него была написана подпрограмма.
Как это работает.
Теоретический принцип работы DDS описан во многих статьях, но для нашего случая теорию можно опустить и довольствоваться следующими постулатами: выходная частота генератора AD9851 зависит от тактовой частоты, управляющего двоичного 32-х разрядного слова, задающего частоту, и 8-ми битовой посылки для конфигурации микросхемы прямого синтеза. Итого – 40-битная последовательная посылка DATA и CLOCK с защелкой данных по сигналу FQUD. Таким образом, задав нужную частоту для генератора AD9851, мы получаем на его выходах синусоидальный и прямоугольный сигналы, которые генерируются в дальнейшем самостоятельно до принудительной смены. Для генерации сигнала произвольной формы непосредственно микроконтроллером после нажатия кнопки Run/stop в его оперативную память загружается таблица данных и на порт D в замкнутом цикле выводятся значения формы сигнала. Выход из цикла осуществляется при повторном нажатии кнопки Run/stop.
На приведенных ниже картинках показаны некоторые выходные результаты:
Внимание: Так как у меня в корпусе TQFP были только Atmega88P, соответственно выходной файл скомпилирован под них же. Немножко был обескуражен отсутствием поддержки данного камня в Pony Prog под STK200, но проблему удалось решить программированием непосредственно из-под Васика. Версия 11.9.8 не поддерживает тип данных типа DWord. Для желающих перекомпилировать можно предложить следующее решение – поменять в строке данных Dta последние значения и тип переменной DWord поменять на Long. Или в принципе поменять алгоритм расчета на предложенный камрадом Aleks8383 – до частот 70 МГц он будет работать.
C этой схемой также часто просматривают: |
Генератор видеосигнала на микроконтроллере PIC16F84
Генератор телевизионных сигналов на простых микросхемах
ПРОСТОЙ ГЕНЕРАТОР СИГНАЛОВ НЧ И ВЧ
ГЕНЕРАТОР ИМПУЛЬСОВ НА PIC-КОНТРОЛЛЕРЕ
Широкодиапазонный функциональный генератор
Часы, термометр, барометр, гигрометр в одном флаконе
Стрелочный индикатор загрузки ЦП и оперативной памяти ПК
Детектор утечки бытового газа на датчике MQ-4
Собираем солнечную зарядку для устройств
Интегральные схемы
Новый купон пользователя по заказам US $4.00
Гарантия возврата денег Возврат за 15 дней
- Тип: Регулятор напряжения
- Бренд: RELAND SUN
- Состояние: Новый
- Type: Logic ICs
- Condition: New
1. Основные характеристики ребенка
Эксплуатация или использование электронных продуктов должны иметь профессиональные знания, потому что это включает в себя его собственную связь и включить проблему, не может принять это условие, пожалуйста, покупайте внимательно, после того, как покупка считается приемлемой для этого условия, спасибо за понимание!
DDS AD9851 функциональный генератор сигналов
Детский Размер: 60 мм X 50 мм
Детское питание: 6 V-12 V
Конвей технологии по доступной цене AD9850 9851 Модуль Введение:
1, Модуль может выводить синусоидальную волну и Fang Bo, 2 Синусоидальная волна и 2 Выход квадратной волны (можно переключить только на выход).
Конвей технология производства 9850 9851DDS Диапазон частот:
AD9850 : 0-60 МГц
AD9851 : 0-65 МГц
Квадратной формы волны: 0-1 МГц (Высокая частота будет выглядеть искаженным, не подходит для использования с высокой частотой)
2 Adopt 70 МГц Фильтр низких частот, так что сигнал формы SN Лучше, чем
3 , Параллельный и последовательный ввод данных через перемычку выбора
4 Этот модуль может пройти через Реостат со скользящим контактом для того чтобы достигнуть прямоугольную волну рабочий цикл, Опорное напряжение входного терминала компаратора производится с помощью переменный резистор, резистор можно регулировать с помощью различной скважность Fang Bo
5 , AD9850 Использование модуля 125 МГц Активный с украшением в виде кристаллов, AD9851 Использование модуля 30 МГц Активный с украшением в виде кристаллов
Простая версия этого модуля относится к технологии Conway, произведенной AD9851 Модуль, фактическая форма сигнала, произведенная по ссылке на другие стили AD9851 Модуль, Синусоидальная волна 75 МГц Фильтр низких частот, сигнал может быть доставлен 65 МГц Основная проблема не большая, но чем выше амплитуда частоты, тем меньше, на это нужно обратить внимание усилитель после класса, чтобы достичь увеличения амплитуды.
3, модуль покупки, информация о распродаже
Распределительная информация (включая руководство по описанию модуля, схему, информацию о чипе) была загружена на облачный диск Baidu, мы предоставим вам адрес ссылки и пароль после оплаты.
Зайдя в очередной раз на сайт местного радиомагазина, обнаружил в продаже интересный девайс. Модуль DDS (direct digital synthesis) – синтезатор частоты на микросхеме AD9850. Такой:
Заявленные характеристики:
- частота генерации от 0,029 Гц до 62,5 МГц;
- количество разрядов ЦАП – 10;
- выходной ток ЦАП – до 10,24 мА при напряжении ограничения 1,5 В;
- встроенный компаратор для получения двух оппозитных ТТЛ выходов;
- возможность цифрового управления частотой как по параллельному, так и по последовательному интерфейсу;
- напряжение питания – 5 В;
- потребляемый ток до 96 мА.
И вот, приобретя данный девайс, я решил тряхнуть стариной и исключительно для удовольствия и из любви к искусству изготовить блок управления любительским КВ приемником прямого преобразования на диапазоны 40 и 80 метров.
Для управления модулем синтезатора будем использовать ARDUINO UNO R3 (в моем случае – китайский совместимый клон). Информацию о частоте и других параметрах будем отображать на алфавитно-цифровом ЖК дисплее 16*2, регулировать частоту будем энкодером, переключение диапазонов – логический уровень «0» или «1» на одном из входов ARDUINO.
Выходной синусоидальный сигнал снимается с выхода OUT2 платы синтезатора. Амплитуда 0,5 В, постоянная составляющая – 0,512 В, выходное сопротивление – 100 Ом.
Выдаваемые частоты по диапазонам:
- 80 м – 1745,00 – 1900,00 кГц (принимаемый диапазон 3490 – 3800 кГц);
- 40 м. – 3500,00 – 3610,00 кГц (принимаемый диапазон 7000 – 7220 кГц).
Смеситель приемника прямого преобразования работает на частоте гетеродина, равной половине частоты принимаемого сигнала, поэтому выходные частоты синтезатора имеют соответствующие значения. При этом на ЖК дисплей выводится значение частоты принимаемого сигнала, т.е. из диапазона, указанного в скобках.
Для регулирования частоты используется энкодер BR1 на 24 положения, 5 выводной, с кнопкой. Кнопка энкодера управляет режимом «Грубо/Точно». После включения устройства по умолчанию включен режим «Грубо». При этом шаг изменения частоты принимаемого сигнала – 1 кГц. При однократном нажатии на кнопку (вал) энкодера режим переключается в «Точно». Шаг изменения частоты принимаемого сигнала при этом уменьшается до 10 Гц. При этом на ЖК дисплее справа от значения частоты отображается буква «Т». Повторное нажатие кнопки энкодера возвращает режим «Грубо».
На нижнюю строку ЖК индикатора выводится полоса прогресса, отображающая текущую частоту относительно полного диапазона.
Переключение диапазонов осуществляется подачей логического «0» (диапазон 80 м) или «1» (диапазон 40 м) на вход «BAND». Вход активный, т.е. при обрыве линии, на нем присутствует логическая единица, благодаря подключенному внутреннему подтягивающему резистору контролера ARDUINO. Таким образом, для переключения диапазонов достаточно механической коммутации данного входа на массу.
На вход ААС подается напряжение АРУ приемника для вывода на дисплей показаний S-метра. В моем случае напряжение АРУ 6-10 В соответствует величине принимаемого сигнала S9- S1 соответственно. Значение S выводится на ЖК дисплей.
Кроссовая плата устройства односторонняя, разведена в программе SprintLayout, изготовлена методом ЛУТ. Вид со стороны элементов:
Поработав паяльником, получили набор:
При разработке использовались материалы статьи: http://nr8o.dhlpilotcentral.com/?p=83
Схема простенького приемника для применения с данным синтезатором мной уже разработана, промоделирована. На времени сборка и наладка. Это будет следующая статья.