Форум программистов, компьютерный форум, киберфорум
Электроника и радиотехника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.72/530: Рейтинг темы: голосов - 530, средняя оценка - 4.72
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602

Прога для управления DDS генератором AD9850

27.07.2013, 19:53. Показов 101094. Ответов 61
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Посетило редкое желание поработать.
Валялся китайский модуль с Ali - DDS генератор на AD9850 (такой - http://www.otyexpress.som/item/0-40MHz- ... 16047.html), решил, наконец, сделать к нему управление. Взял ft232 (можно всё, что поддерживает асинхронный битбанг от ftdi, хотя возможна доработка и под обычные USB-UART без битбанга или на обычный COM, просто тут чуть проще) и дописал ПО . Кстати, AD9850 - действительно, офигительная вещь оказалась.
Что получилось выкладываю с исходниками. Может пригодится кому


http://**************************/download/file.php?id=16032&sid=a4750fb96fbf78bbea 2eae6b46e1e45d


[244.22 Кб]
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.07.2013, 19:53
Ответы с готовыми решениями:

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

прога для голосового управления компа
Здравствуйте) помогите скомпилировать прогу, нашел давно где-то в инете исходники проги для голосового управления, но скомпилировать не...

Программирование программы управления генератором RS SMU200A на C++ используя соккеты
Доброго времен суток. Прошу помочь идеями или советом (возможно кто-то уже сталкивался с чем-то подобным). Пишется программа по...

61
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
13.04.2014, 12:23
Студворк — интернет-сервис помощи студентам
ну вообще-то в гугле подробно написано:
http://www.digit-el.som/files/articles/dds.pdf - вот статья от уважаемого ЛИ

грубо, DDS-генератор - это обычный генератор сигналов, но использует цифровые методы для генерации сигнала, что даёт кучу преимуществ - подробно в статье, что выше
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,818
13.04.2014, 12:58
плохо выразился. каково вообще применение генераторов сигналов? ну просто в МК привычно видеть какой-то меиндр. с этим более-менее понятно. для высокой точности к МК добавляют кварц.
это устройство позволяет в максимально удобной форме настраивать высокоточный выходной сигнал/менять частоту/скважность? (чтобы для отладки подавать на вход проектируемых устройств?)

а как насчет остальных хитрых сигналов? синусоиды/треугольные пилы/
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
13.04.2014, 14:11
ну а как оценивать искажения сигнала, например, усилителем? подают синусоиду и смотрят искажения на выходе

да кругом генераторы стоят, я даже не ожидал такого вопроса
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,818
13.04.2014, 15:17
ну фиг знает. зашоренность мышления?)
когда всё кругом про ардуину, я, пожалуй, ни разу не встречал, где кто-то бы по делу использовал подобные штуки (наверное, за исключением каких-нибудь сигналов ДПКВ при создании эбу двигателя)
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
13.04.2014, 17:13
ну так аналоговую-то электронику никто не отменял - в розетке и то пока ещё синус
0
kymom
14.04.2014, 04:16
Уфф..

мне повезло, раздобыл USB-SERIAL переходник на ft232RL с 15-выводами микросхемы.

https://imagizer.imageshack.us/v2/735x597q90/838/j1m1.jpg

в результате проверки осцилографом под программу Johmmy0007, выяснил как подключить переходник USB-SERIAL на ft232RL:

порт переходника - порт ad9850-модуля
TXD - W_CLK
DTR - D7 (DATA)
RTS - FQ_UD
VCC - VCC
GND - GND

У меня в руководстве к переходнику USB-SERIAL написано макс ток 50 мА. А по даташиту ad9850-модуля:
если питание будет 3.3В - ток 47 мА
если питание будет 5В - ток 76 мА

Так что от 3.3В, вроде как гарантировано должно завестись все через один usb-порт. На днях должен мне приехать сам ad9850-модуль, так что буду пробовать.

p.s. Johmmy0007, баг-репорт: твоя программа глючит, вылетала с ошибкой при нажатии кнопки "Старт". Если заменить в Options.ini в параметре Freq точку на запятую, то работает. Видимо учитываются региональные установки винды. Не-програмеры врядли разберутся.
0 / 0 / 0
Регистрация: 08.02.2012
Сообщений: 648
14.04.2014, 08:50
kymom - Подключение AD9850 стандартное, вот продублирую схему:
[9.42 Кб]

В следующем посте сейчас опишу работу с программой....
0
0 / 0 / 0
Регистрация: 08.02.2012
Сообщений: 648
14.04.2014, 09:26
А теперь собственно сама программа:
Если у кого есть желание сделать удобно и красиво, вот исходники: [98.32 Кб]

Вот сама программа (исправил одну ошибку) [37.2 Кб]

пароль: iosyitistromyss

Фото интерфейса программы:


- Перед началом использования выбираем FT контроллер (элемент №1) с которым будем работать, если их несколько, в выпадающем списке при клике по контроллеру, выполняется попытка подключения к нему, и в зависимости от этого появляется справа надпись, удалось или нет подключиться. После этого устанавливаем флаг (элемент №4), и устанавливаем желаемую частоту, и по идее на выходе у AD9850 должны увидеть сигнал.

Дополнительный функционал:

- элемент №2 - тут можно вручную или с помощью стрелок вверх/вниз устанавливать частоту, (шаг зависит от того что выбрано ниже)
- При изменении частоты в текстовом поле "двоичное представление" автоматически вычисляется значение которое нужно послать (делалось для отладочных целей).
- Кнопкой (элемент №3) можно скопировать данные из текстового поля в поле CBUS2 (Data)
- Кнопка (элемент №5) выполняет посылку данных в контроллер AD9850.

- Посылаемые данные в контроллер AD9850 представляют собой массив из 32 бит, где содержится частота и ещё какие-то параметры, с ними ещё не разбирался.... но можно руками изменять эти биты в поле "двоичное представление", и потом нажимать кнопку №3 которая преобразует это в набор данных для посылки...

Немного возможно сумбурно написал, ну если что поправлю описание, после своего ДР не выспался :-) и осмысленные речи не очень получаются :-)
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
14.04.2014, 10:13
Цитата Сообщение от kymom
в результате проверки осцилографом под программу Johmmy0007, выяснил как подключить переходник USB-SERIAL на ft232RL:

порт переходника - порт ad9850-модуля
TXD - W_CLK
DTR - D7 (DATA)
RTS - FQ_UD
VCC - VCC
GND - GND
Ну я ж написал - нет разницы как подключать сигнальные выводы - в программе есть настройки выводов. или лень даташит открыть, зачем осциллограф?

Цитата Сообщение от kymom
p.s. Johmmy0007, баг-репорт: твоя программа глючит, вылетала с ошибкой при нажатии кнопки "Старт". Если заменить в Options.ini в параметре Freq точку на запятую, то работает. Видимо учитываются региональные установки винды. Не-програмеры врядли разберутся.
да, возможно, но сейчас всё равно лень лезть - винду недавно переустановил делфи даже не ставил пока. Но буду иметь ввиду. У себя я всегда точку ставлю, как разделитель десятичных знаков
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
14.04.2014, 10:33
Цитата Сообщение от Bomomd
Вот бы еще к этой проге sweep прикрутить, было бы здорово.
хотел прикрутить изначально, но проблема в том, что при общении по усб в bulk режиме (FT232 только так умеет) невозможно выдержать интервалы между посылками. это значит, что изменение частоты будет как попало происходить, даже от нагрузки компа зависеть будет, что некрасиво, а раз некрасиво - то и смысла нет делать
0
kymom
14.04.2014, 17:34
Цитата Сообщение от Johmmy0007
Ну я ж написал - нет разницы как подключать сигнальные выводы - в программе есть настройки выводов. или лень даташит открыть, зачем осциллограф?
ы! до меня только сейчас дошло, что эти цифры в настройках могут (!) означать. Оказывает еще нужно где-то (кстати непонятно где) в 40-страничном даташите искать значение этих циферок.
Нда.. не тривиально, совсем не тривиально.

Понимаю, что программа для себя делалась, но раз уж опубликовал - потрудился бы объяснить как настраивать.
Я бы во всяком случае потрудился. Иначе толку от нее - около нуля.

Совет, из програмистского: пользователям программы всегда (!) нужно объяснять все так, будь-то бы они 3х летние дети.
Если разработчик программы считает, что пользователи обладают теми же знаниями что и он, то он СЕРЬЕЗНО ОШИБАЕТСЯ.
Практически всегда! (проверено на опыте >10 лет программирования в бизнес-проектах)
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
14.04.2014, 17:41
На данном форуме - не слушательницы хореографических курсов обитают. И знают, что такое даташит. Знают, зачем им DDS-генератор. и если я пишу - посмотреть даташит - надо просто посмотреть, а не говорить, что я должен подробно всё описывать - из всех кто скачал, практически никто вопросов не задал лишних - значит спокойно разобрались.
А что касается конкретных ножек - специально я их не указываю, поскольку на разных микросхемах ftdi они могут быть разными (необязательно использовать именно ft232rl), главное, чтоб битбанг поддерживался
0
kymom
16.04.2014, 03:42
Прости, Johmmy0007, погорячился я. У вас тут на форуме свои правила, а со своим уставом в чужей монастырь не суются. Мой грех...

По сути:
приехал ко мне модуль-AD9850.
Заработал он только на 3.3В да и то с pull-down на выводе DATA. До 2.64В пришлось понизить (1200 Ом).
3-4 раза из 5 запускается синусоида. Как то не стабильно (
На 5В вообще не удалось завести ((
Пока пробовал только pull-down на выводе DATA.

Планирую еще испытать pull-down/pull-up резисторы на входах W_CLK и FQ_UD.

Может встречался кто еще с такими нюансами, как решали?

p.s. Помогите плиз, я зеленый совсем в сборке/настройке схем.
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
16.04.2014, 10:12
никакого резона ставить резисторы нет абсолютно - модули usb у вас, как я понял, на ft232rl - у них так называемый комплентарный выход, т.е. выход соединяется то землёй (в 0), то с питанием (1) - ставить резисторы совершенно бессмысленно.

никаких резисторов в питании тем более не должно быть (да ещё через 1200ом), иначе питание у вас будет нестабильное вообще. более того нельзя запитывать выход ft232rl и ad9850 от разных напряжений - даже сгореть может.
всё должно работать от 5в- прямо с усб

убирайте резисторы однозначно
и нарисуйте, сфотайте, как что соединяли, и настройки проги, будем разбираться
0
kymom
16.04.2014, 14:41
Цитата Сообщение от Johmmy0007
убирайте резисторы однозначно
и нарисуйте, сфотайте, как что соединяли, и настройки проги, будем разбираться
резистор убрал.
нарисовал, сфоткал, и скрин настроек программы сделал


[201.54 Кб]
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
17.04.2014, 12:49
всё правильно, вроде. попробуйте убрать с макетки и подсоединить напрямую проводками. тут ещё длина проводов может влиять, хотя частота вроде небольшая.

я так понимаю - на схеме - это не нумерация ножек микросхемы - померьте омметром на какие ножки ft232 эти контакты идут (на выключеном модуле, естественно).

непонятно ещё - что за ножки vcc и vdd тоже померьте - и напряжение на них потом.
0
kymom
18.04.2014, 03:39
Цитата Сообщение от Johmmy0007
всё правильно, вроде. попробуйте убрать с макетки и подсоединить напрямую проводками. тут ещё длина проводов может влиять, хотя частота вроде небольшая.
подпаял на проводки - все заработало как часы.
видимо какая-то глючная макетная плата у меня.
хотя на осциллографе были чистые командные сигналы.
непонятно вообщем.
 Аватар для Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 28
05.06.2014, 15:30
От скуки сделал автономный avr+этот китайский модуль на AD9850.
Опорный генератор на этой китайской платке уж оч греется (градусов до 48, если тестор не врет). До 3.3 питалово сбрасываешь, перестает.
Вроде правильный с буквой "А" на 5 вольт, но ....
0
0 / 0 / 0
Регистрация: 08.02.2012
Сообщений: 648
05.06.2014, 17:55
Все собирался сам сделать автономник, да руки не доходили, а схемой и прошивкой не поделишься?
0
 Аватар для Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 28
05.06.2014, 18:57
Цитата Сообщение от sitimur
Все собирался сам сделать автономник, да руки не доходили, а схемой и прошивкой не поделишься?
схемы как таковой нет. на макетке по быстрому спаял (валялась уже давно с распаянным 8535-м). все стандартно по шиту.
если не лень, можно по проекту определить как и что подключается.
atmega8535, индикатор p1620b (он же vhx1620bhrc9), китайский DDS модуль, пять кнопок.
PB0-PB4 - кнопки (up, down, left, right, risit)
PD3-PD6 - на них висит DDS модуль (serial connect с ресетом)
Это про индикатор :
#defyme E PC2
#defyme RW PC3
#defyme RS PC4
и на PA висит шина индикатора 8 бит.
сам проект: [53.69 Кб]

есть там быдлокод. не исправлял, т.к. все равно работает.
выглядит так:

вот видюха, ради прикола.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.06.2014, 18:57

Непонятки с AD9850
Имеем DDS AD9850. На сайте производителя есть Device Confikurotion Assistant, согласно которому при частоте тактирующего генератора 125 МГц...

тактовый генератор для DDS на 500МГц
Добрый день. Необходимо выбрать тактовый генератор для микросхемы DDS(direct digital synthesis) AD9911, нужна частота 500МГц. Т.к. с...

Библиотеки для работы с png или dds
Доброго времени суток.. Ищу библиотеку для работы с png или dds(ну либо какой другой формат в RGBA), на данный момент нужна просто загрузка...

Программа в ПЗУ является генератором цифровых сигналов для процессора?
Всем доброго дня...

Элементы управления для выбора из нескольких альтернатив. Создание элементов управления в программном коде
Здравствуйте! помогите!!! нужно:1. реализовать построитель предложений по типу «Студент получает знания». 2. GroupBox –...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов и табличных частей документа при копировании
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время? Никакой пенсии. Никакого нового. . .
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы Кратко. . .
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем **Полевые заметки о двухнедельной совместной работе**. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru