Обсуждаем цифровые устройства...
Ответить

3-канальный DDS на STM32F303

Чт сен 24, 2015 12:40:58

3-канальный генератор, по каждому каналу задается частота 0.000..1000000Гц, фаза 0.000..359.999град, форма (синус, меандр, ШИМ, треугольник, пила, пост.уровень), заполнение ШИМа 0.000..100.000%. Частота обновления ЦАПов 4 МГц. Управление - энкодер или кнопки. Индикатор - 8х2 или 16х2.

Управление энкодером: поворот - выбор параметра (Fr1..Fr3 - частота, Ph1..Ph3 - фаза, %1..%3 - ШИМ соответствующего канала), короткое нажатие - установка (в разряде мигает курсор), еще нажатие - выбор разряда, длительное нажатие - установка. Нажатие >5 сек - вход в настройки, влево/вправо - выбор параметра: Form1..Form3 - форма (0-синус, 1-меандр, 2-ШИМ, 3-треугольник, 4-пила, 5-инверт.пила, 6-пост.уровень (задается ШИМом)), Buf1 - вкл/выкл буфера канала 1, Fchn1 - вкл/выкл задания частоты всех каналов через канал 1. Короткое нажатие - редактирование, длительное - выход.

Схема под контроллер в корпусе TQFP32:
sch.png
(29.77 KiB) Скачиваний: 1342

Выходы каналов: PA4,PA5,PA6, синхронизация: PA3.

Для улучшения динамики можно добавить токовый буфер на инвертирующем ОУ, как описано в аппноте: http://www.st.com/st-web-ui/static/acti ... 129215.pdf

Прошивка:
gen_f303-01.hex
(44.09 KiB) Скачиваний: 560

Re: 3-канальный DDS на STM32F303

Вс июл 24, 2016 16:54:19

Схема/плата с буферными усилителями (с настройкой усиления/смещения):

ИзображениеИзображение

ИзображениеИзображение

добавлена возможность генерации постоянного напряжения (параметры DC1..DC3), синхронизации каналов (параметр sync), задания единой формы/частоты для всех каналов (параметры allForm1, allFreq1).
Вложения
sch.zip
(543.67 KiB) Скачиваний: 287
gen_f303-01.hex
(45.7 KiB) Скачиваний: 661

Re: 3-канальный DDS на STM32F303

Ср мар 15, 2017 01:09:10

Интересный проект, а 4-х канальный вариант планируется? или может быть поделитесь исходником?

Re: 3-канальный DDS на STM32F303

Ср мар 15, 2017 13:16:36

:) зачем вам столько?

Re: 3-канальный DDS на STM32F303

Ср мар 15, 2017 14:17:15

ncp1400, а DDS цикл выравнен? Джиттера нет? А на близких частотах (например, в звуковом диапазоне) не слышно ли биений?

Re: 3-канальный DDS на STM32F303

Ср мар 15, 2017 14:27:15

все работает синхронно через DMA

Re: 3-канальный DDS на STM32F303

Ср мар 15, 2017 16:00:24

И никаких подробностей не ждать? :)

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 03:08:56

Интересует вовсе на 8 каналов... Однако, 4 канала устроит, чисто ШИМ. Делал спаренный (2-канальный) по синхро генератор импульсов Л.И.Ридико, вот ваш проект и заинтересовал...

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 10:40:42

в контроллере всего 3 канала DAC. если нужен просто ШИМ - можно на таймерах. Если ВЧ синус - проще на готовых модулях AD9833/9850/9851, тактировать от одного генератора и делать синхронную загрузку/сброс

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 12:58:05

До STM-ок никак руки не доходят, все на авр-ках еще.. а подскажите тогда 8 каналов на таймерах stm реально? чтоб до 1мгц, сдвиг фаз 0-360, скважность 0-100% меж каналами? или хотя бы 4 канала?
На AD9832 делал ген с фазовращателями на триггерах, на 90 и 120 градусов... ШИМ интересует многоканальный не менее 500кГц

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 13:16:28

а подскажите тогда 8 каналов на таймерах stm реально? чтоб до 1мгц, сдвиг фаз 0-360, скважность 0-100% меж каналами? или хотя бы 4 канала?
для 1МГц у контроллера слишком низкая тактовая частота, макс.80МГц - будет низкое разрешение. На ВЧ лучше на ПЛИС или синхронные счетчики, у dsPIC есть ВЧ ШИМ. Можно затактировать контроллер/ПЛИС от синтезатора - тогда реально сделать плавный ШИМ на ВЧ

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 14:52:31

Благодарю за информацию. Тут же интерес на 1 чипе сгородить - наподобие как китайцы фарцуют... а так плис и прочее конечно пределу фантазии нет :))

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 14:59:52

ну будет 2 чипа а не один, напр. Si5351a + контроллер

https://ru.aliexpress.com/item/Free-Shi ... 58029.html
https://ru.aliexpress.com/item/Free-shi ... 17541.html

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 15:46:45

у меня вопрос возможно ли перекомпилировать данный проект под 103 камень (можно с некоторым урезанием функций)

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 16:02:38

под 103 не просто перекомпилировать - придется на 50% перелопатить весь код... если будет время, попробую

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 16:24:51

ncp1400 писал(а):под 103 придется на 50% перелопатить весь код... если будет время, попробую

заранее спасибо :))) буду следить за темой
нахожусь в стадии знакомства с стм в режиме пользователя (в написании кода полный 0 :)) ) да и многим таким же потребителям будет интересно тем более 103 стоит не дорого а ваше изделие весьма интересное и нужное

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 17:00:09

Вот такой вроде удобный интерфейс..


На 103 проце тоже интересно...

Re: 3-канальный DDS на STM32F303

Чт мар 16, 2017 17:27:09

может и интересно, но мне оно пока не нужно.
ищите на форумах типа CQHAM, вроде там такое разрабатывают

Re: 3-канальный DDS на STM32F303

Пт ноя 24, 2017 17:22:45

ГКЧ не реализован?
Есть намерение совместить этот генератор с RLC измерителем "BALMER 303". На сколько это хорошая идея на ваш взгляд?

Re: 3-канальный DDS на STM32F303

Сб ноя 25, 2017 20:02:16

зачем? мерять полное сопротивление на всех частотах?
наверно можно
Ответить