DSS генератор на AD9833

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#1

Сообщение scadapack » 24.03.2017{, 09:01}

Делаю генератор с цифровой шкалой с заданием частоты от энкодера. Быстро и удобно задаётся частота от 1 Гц до 12,5 МГц. Прошу помощи у уважаемых знатоков в создании блока на С для генератора DSS на микросхеме AD9833. Не смог сам разобраться. Вот такое изделие использую. Выкладываю программу.
Вложения
1747505.flp
(450.71 КБ) 145 скачиваний

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

DSS генератор на AD9833

#2

Сообщение AVGN » 24.03.2017{, 10:23}

Да на следующем этапе планировал на AD9833 сделать генератор.
Платки пока нет.
Пока с AD9850, AD985051 разобрался.
Не искали библиотеки для AD9833 под Ардуино есть ?
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#3

Сообщение scadapack » 24.03.2017{, 10:30}

Библиотеки то попадаются, но разобраться с ними не могу. Для меня "С" - тёмный лес.
Вот например, и вот.

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

DSS генератор на AD9833

#4

Сообщение AVGN » 25.03.2017{, 13:48}

Вот здесь подробно описано управление AD9833 В качестве управляющего мк автор использовал ATMega16
Может программисты заглянут сюда и помогут сделать пользовательский блок.
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#5

Сообщение scadapack » 24.08.2018{, 11:11}

Пытаемся сделать блок по скетчу. Компиляция в Ардуино ИДЕ проходит с ошибками. Прошу помощи знатоков!
Ссылка на сайт с хорошим описанием микросхемы AD9833, по которой и пытаемся сделать блок.
ссылка
Вложения
DDS_AD9833_(CODE).ubi
Блок пользователя с ошибками
(31.67 КБ) 103 скачивания
AD9833_generator.ino
Скетч образец
(22.52 КБ) 104 скачивания

Mining
Сержант
Сообщения: 148
Зарегистрирован: 31.10.2016{, 15:01}
Репутация: 4
Имя: Алексей

DSS генератор на AD9833

#6

Сообщение Mining » 24.08.2018{, 17:25}

scadapack, не понятно, Вы делаете проект в флпрог? Почему проект ino, а не flp ?

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#7

Сообщение scadapack » 25.08.2018{, 05:32}

" *.ino " это файл скетча для Arduino IDE. Я пытаюсь создать блок пользователя. При компиляции программы с одним только блоком, выходит ошибка
СпойлерПоказать
Arduino: 1.8.1 (Windows 7), Плата:"Arduino Nano, ATmega328"

pr3:5: error: redefinition of 'long unsigned int Freq_137514206_1'

unsigned long Freq_137514206_1;

^

C:\Users\nkip.KZ\AppData\Local\Temp\flprog\pr3\pr3.ino:3:15: note: 'long unsigned int Freq_137514206_1' previously declared here

unsigned long Freq_137514206_1;

^

pr3:6: error: redefinition of 'int Phase_137514206_1'

int Phase_137514206_1;

^

C:\Users\nkip.KZ\AppData\Local\Temp\flprog\pr3\pr3.ino:4:5: note: 'int Phase_137514206_1' previously declared here

int Phase_137514206_1;

^

C:\Users\nkip.KZ\AppData\Local\Temp\flprog\pr3\pr3.ino: In function 'void loop()':

pr3:53: error: 'Freq1' was not declared in this scope

Freq_137514206_1 = Freq1;

^

pr3:55: error: 'WriteAD9833' was not declared in this scope

WriteAD9833(FreqData_137514206_1 & 0x3FFF | bFreq_reg0_137514206_1);

^

C:\Users\nkip.KZ\AppData\Local\Temp\flprog\pr3\pr3.ino: At global scope:

pr3:83: error: expected declaration before '}' token

}

^

exit status 1
redefinition of 'long unsigned int Freq_137514206_1'

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

DSS генератор на AD9833

#8

Сообщение AVGN » 27.03.2019{, 16:45}

Савсэм забыл про AD9833.
Вот сделал отдельными блочками.
Но плату положил поближе и как всегда бывает за полчаса ревизии не нашел у себя в мастерской.
Тестируйте у кого есть плата.
AD9833_V1_SINE_SQUARE_TRIANGLE.flp
(139.05 КБ) 87 скачиваний
Подключаем так:
AD9833 Pin...Arduino UNO Pin
CLK------------SCK (13).............SPI Clock pin
DAT------------MOSI (11)...........SPI Master Out Slave In data pin
FNC------------User defined (4)...SPI transfer enable (active LOW)
VCC------------5V Рекомендуется установить параллельно соединенные конденсаторы 10 uF и 0.1 uF.
GND------------GND

FNC на некоторых AD9833 китайских платах обозначен как FSYNC

Отправлено спустя 1 час 40 минут 17 секунд:
Версия 2. Объединил в один блок - синус+меандр+треугольник
AD9833_V2_SINE_SQUARE_TRIANGLE.flp
(127.56 КБ) 119 скачиваний
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#9

Сообщение scadapack » 28.03.2019{, 07:49}

Я ранее выкладывал блок пользователя.

Аватара пользователя
Ivan_Kornege
Лейтенант
Сообщения: 342
Зарегистрирован: 29.04.2017{, 08:24}
Репутация: 27
Откуда: гАндурас
Имя: Ivan

DSS генератор на AD9833

#10

Сообщение Ivan_Kornege » 28.03.2019{, 11:03}

AD9833 имеет на борту два регистра частоты и один выход. Можно замутить фазовую модуляцию.

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

DSS генератор на AD9833

#11

Сообщение AVGN » 28.03.2019{, 19:51}

scadapack писал(а):
28.03.2019{, 07:49}
Я ранее выкладывал блок пользователя.
Ivan_Kornege писал(а):
28.03.2019{, 11:03}
AD9833 имеет на борту два регистра частоты и один выход. Можно замутить фазовую модуляцию.
Вот полноценный -дав регистра со сдвигом фазы :smile38:
AD9833_V3_SINE TRIANGLE SQUARE HALF_SQUARE.flp
(163.97 КБ) 184 скачивания
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Mining
Сержант
Сообщения: 148
Зарегистрирован: 31.10.2016{, 15:01}
Репутация: 4
Имя: Алексей

DSS генератор на AD9833

#12

Сообщение Mining » 01.04.2019{, 13:40}

AVGN писал(а):
28.03.2019{, 19:51}
Вот полноценный -дав регистра со сдвигом фазы :smile38:

AD9833_V3_SINE TRIANGLE SQUARE HALF_SQUARE.flp
scadapack, этот проект с блоком тестировали, работает?

Аватара пользователя
scadapack
Рядовой
Сообщения: 83
Зарегистрирован: 07.09.2015{, 05:18}
Репутация: 5
Откуда: Степногорск
Имя: Вячеслав

DSS генератор на AD9833

#13

Сообщение scadapack » 02.04.2019{, 11:33}

Я со своим блоком сделал. Выдаёт синус, треугольник и меандр.
Вложения
Синтезатор частоты на AD9833 с энкодером.zip
(57.67 КБ) 192 скачивания

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

DSS генератор на AD9833

#14

Сообщение AVGN » 02.04.2019{, 18:36}

scadapack писал(а):
02.04.2019{, 11:33}
Выдаёт синус, треугольник и меандр.
В вашем блоке используется только нулевой регистр. Блок не подойдет если требуется сдвиг фазы.
Я в этой микросхеме увидел одну ценность для радиолюбителя - сдвиг фазы синусоидального сигнала от 0 до 360 градусов. И допилил блок для использования всех функций.
Как генератор использую AD9851 до 70МГц.
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Mining
Сержант
Сообщения: 148
Зарегистрирован: 31.10.2016{, 15:01}
Репутация: 4
Имя: Алексей

DSS генератор на AD9833

#15

Сообщение Mining » 12.04.2019{, 04:02}

Так что ребята так и не проверили блок со сдвигом фазы? Сижу раздумьях покупать AD9833 или ...

Ответить

Вернуться в «Спросить у знатоков»