| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| DDS генератор http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=12740 |
Страница 1 от 9 |
| Автор: | emilvtc [ Пон Мар 03, 2014 1:23 pm ] |
| Заглавие: | DDS генератор |
От много време ме гложди мисълта как най-мързеливо, лесно и евтино да се направи DDS генератор с възможност за синтез на сигнал с произволна форма. Т.е. да му се зареди произволен патърн, който периодично да се "плейва". Представям си го с някакъв микроконтролер с USB и достатъчно RAM памет (примерно >=32kb за буфер в който ще се зареди парърна на сигнала), който периодично през точен интервал от време (без джитер) да зарежда DAC с максимална честота на рефрешване поне 20msps (да може да се генерира синусоида от 40точки с честота 500kHz). Цялото устройство да се захранва само от USB-то. Честотите и рефреш-рейта не са задължителни и твърдо фиксирани, но е добре да са колкото се може по-високи, стига да могат да се постигнат САМО с микроконтролер и наличната в него периферия. Микроконтролера може да е всякакъв относително достъпен (като доставка и цена), стига да има подходящата периферия: 1. Да може да клочи с DMA паралелен (примерно 16 bit) бъс, към който ще е закачен DAC-a. DMA трафика вероятно трябва да се тригерира от таймер, за да може да се променя рефреш-рейта на DAC-a. (как може да се направи по друг начин, така че да се гарантира постоянен рефреш-рейт без вкарване на джитер?) 2. Достатъчно RAM >=32kB 3. USB интерфейс за връзка с PC Не ми се мисли в посока програмируема логика (FPGA, CPLD и др.)+ RAM + .... Съгласен съм, че така би трябвало да се направи, но както казах в началото - търси се "мързелив" вариант въпреки ограниченията в рефреш-рейта, който той ще наложи ... Варианта с микроконтролер с USB HighSpeed, през който директно да се пише в DAC-a също не ми харесва поради ред причини. DAC-a предполагам трябва да е някакъв >=14 битов и вероятно с паралелен интерфейс (не знам със сериен може ли да се постигне лесно). Идеята ми е евентуално някога след време към процесора да може да се добави някакво дисплейче и клавиатура/rotary encoder, за да може генератора да работи и като самостоятелно устройство без връзка с компютър. Та въпроса ми е сещате ли се за подходящ микроконтролер и подходящ DAC? |
|
| Автор: | miro_atc [ Пон Мар 03, 2014 2:27 pm ] |
| Заглавие: | Re: DDS генератор |
В малките контролери обикновено слагат аудио DAC-ве до 1msps, поне аз не се сещам за по-добри. Може да провериш STM F3 за всеки случай, че пиша от таблет сега и не ми се зареждат чаршафи. Неговитв АЦП-та ги дават до 18msps може и даковете му да са бързи.Някои атмели имаха по 2 вида дакове, но разликата беше в резолюцията, а не скоростта. Но принципно ти трябва нещо с видео DAC. Освен да помислиш върху варианта за външен такъв |
|
| Автор: | emilvtc [ Пон Мар 03, 2014 6:44 pm ] |
| Заглавие: | Re: DDS генератор |
Оoносно DAC-a - едно бързо търсене във фарнел и дигикеу - като че ли най-подходящ е LTC1668. Цената обаче не е много "народна"... Погледнах STM32F303xB/STM32F303xC. DAC-овете са им много бавни за целите ми. Ако правилно съм разбрал - нямат и DMA трафик към GPIO портовете, към които да закача външен паралелен DAC ... Май ще ми трябва проц с външна шина за памет и съответно DMA от тип памет-памет ... На всичко отгоре дма-то трябва да се тригерира по таймер ... Баси и изискванията ... |
|
| Автор: | ike [ Пон Мар 03, 2014 7:52 pm ] |
| Заглавие: | Re: DDS генератор |
emilvtc няма ли програмируеми DDS, на които им закачаш един евтин контролер и си готов? |
|
| Автор: | emilvtc [ Пон Мар 03, 2014 8:17 pm ] | |||||||||
| Заглавие: | Re: DDS генератор | |||||||||
Има, но в тях не може да се зареди произволен патърн на сигнал/ Примерно на тези базирани на AD9850 им трябва само контролер, който да ги инициализира и само си генерират синусоида, но само толкова. Идеята ми е примерно произволно записан сигнал от скоп да може да се зареди в генератора и после той да го възпроизвежда 1:1 или с различни честоти... Е те това с DDS-ите които съм гледал НЕ става ... |
||||||||||
| Автор: | miro_atc [ Пон Мар 03, 2014 8:51 pm ] |
| Заглавие: | Re: DDS генератор |
мда... погледнах ги и аз, ДМА вероятно ще се подкара, но трудно ще се синхронизира. Не знам каква точно ти е целта, според мен има два варианта. Ако ще е с малък контролер и USB захранване ще трябва фпга. От памет няма нужда, по-евтините спартанчета имат по около 8К, а с някой лев отгоре може да се увеличи. Другият вариант е някоя от цинк платките... от това няма да стане продукт ако това ти е целта, но иначе ще може да я ползваш за различни цели. Видеото обикновено го правят с резисторна матрица, т.е. дори не ползват DAC и не съм чул да има компромис с качеството. Тва евентуално е вариант и за мцу-фпга варианта. |
|
| Автор: | ike [ Пон Мар 03, 2014 9:56 pm ] |
| Заглавие: | Re: DDS генератор |
emilvtc Я виж дали това проекче няма да ти свърши работа: http://www.myplace.nu/avr/minidds/ |
|
| Автор: | Pif [ Пон Мар 03, 2014 10:06 pm ] |
| Заглавие: | Re: DDS генератор |
Като си софтуерист защо се бориш с хардуерни проблеми. Вариянт 1: Купуваш си за 500 долара готово устройство и си щастлив. Вариянт 2: Пишеш си правилния софтуер който да ти ползва изхода на видеокартата и пак си готов. Или краен вариянт ДВИ към ВГА и пак писане на малко софтуер. Нали си софтуерист. Ама хем да е такова, ама хем онакова, ама да няма други части освен контролера ама и да може да ходи до луната и да пере и да готви. Много е далече времето когато няма да трябва хардуер за да правиш електроника. Като си силен в софтуера - пиши софтуер за готови работещи устройства. Ако ти е кеф вземи един дивелъпмънт кит с някой Кортекс А8 и вградено ВГА на на което тръгва линукс и си подкарай на него генератора. Олимекс продават такива значитено евтино. Иначе тоя видео ЦАП с какво ще го интерфейснеш към останалия свят? Пак ще ти трбват части. |
|
| Автор: | emilvtc [ Пон Мар 03, 2014 11:38 pm ] |
| Заглавие: | Re: DDS генератор |
ike, Нещо подобно имам в предвид, но да е малко "по-истинско". Миро, не го мисля като продукт, но кой-знае какви идеи ще ми дойдат... 8К байта памет в фпга-то ми се струват малко за буфер ... Pif, не знам дали съм софтуерист или хардуерист. От много години се занимавам и с двете ... А и предполагам няма как да е иначе, когато се правят продукти с едночипови контролери ... Много често хардуера се "компенсира" със софтуера и с това един "чист" софтуерист трудно би се справил ... Още по-малко пък "чист" хардуерист ... Има два подхода да се стигне до даден продукт : 1. Поставят се някакви строги изисквалия (параметри), които се опитваш да постигнеш без компромиси (е, все пак се търси оптимизация по цена) 2. Опитваш се да "изцедиш" възможно най-доброто от дадено решение и да постигнеш възможно най-добрите параметри с него, без да си поставяш предварително строги и често невъзможни или непреодолими изисквания към параметрите. Като пример в подкрепа на това е аналогово-цифровия анализатор USBee-AX Устройството не е идеално, но върши перфектна работа в доста случаи. Предполагам става ясно, че съм избрал втория подход в този случай. Опитвам се да преценя с ваша помощ дали идеята е реализуема, с каква елементна база може да се направи и какво може да се постигне като параметри. В случая не съм поставил ограничения към проца (да е АРМ, МИПС, ПИК или друг) и цап-а. Ще се използват подхидящите ... Цялата идея се върти около "специфична" периферия в контролера позволяваща реализирането на функционалността която търся. Т.е. за да се избере подходящ контролер трябва да се познават много такива, с което аз не мога да се похваля. Предполагам, че и малко от вас могат. Та за това се опитах да опиша идеята и изискванията към периферията и евентуално като четете това да прецените контролерите които вие познавате могат ли да се използват в случая и ако могат - да ме насочите към тях ... Че идеята няма да може да се реализира с един чип - това е ясно. Въпроса е да е с минимален брой чипове... След цап-а ще има усилвател |
|
| Автор: | miro_atc [ Вто Мар 04, 2014 12:44 am ] |
| Заглавие: | Re: DDS генератор |
Е, аз не познавам всички но достатъчно контролери, за да ти кажа че няма как да скочиш много над аудио честотите. За тоя 50 msps dac мисля че ще стане с атмелче, те си имат ДМА и може да им се сетва клок. Верно, това ще е значително по-бързо от вграден дак, но крайният сигнал пак няма да е кой знае колко високочестотен. С фпга може повече, с евтините 200-300 msps. Спартан 6 може да вдигнеш 1 gsps, но PLL-те му не са гъвкави и изходните драйвери не са както при 7- ците. Та ако искаш 1 gsps и повече само цинка е без компромиси. Вероятно изглежда ненужно бързо, обаче ако е 10- битов изход и искаш да развъртиш всичките битове и... крайният сигнал клекна на 1 MHz -:) А за продукт питах за да знам една бройка ли гониш или не. А иначе ако е опън сорс може и да е интересно... мен ми е трябвала платка с малко фпга, ама ме домързя да си я направя |
|
| Автор: | emilvtc [ Вто Мар 04, 2014 11:28 am ] |
| Заглавие: | Re: DDS генератор |
Миро, идеята за опен-сорса не съм я мислил. По-скоро мислех ако се получи нещо читаво да го постна в раздела проекти за споделяне (както постнах лог. анализатора преди време). Със сигурност ако се намерят и други заинтересовани от проекта - съвместното мислене (а и правене) ще даде по-добри резултати. Може би трябва да помислим в тази посока. Само да не стане като проекта за Лог. Анализатор в началото на форума... В момента работя с по-стар модел на TG1010A. Просто е незаменим инструмент ако се налага процесване на сигнали (тези които са "копали" в тази посока ще ме разберат най-добре). Проблема му е, че има буфер за патърн от само 4к точки и бих бил по-щастлив ако буфера ми е малко по-голям... Та целта ми да се сдобия с подобен инструмент на цена 1/50 (примерно) от тази на цитирания уред (както се сдобих с Лог. анализатора на цена 1/30 от тази на оригинала). Както "Асан казал на Айшето пращайкия за хляб - въри ма, то с пари всеки може ... " |
|
| Автор: | michev [ Вто Мар 04, 2014 3:33 pm ] |
| Заглавие: | Re: DDS генератор |
Не отмятай с лека ръка готовите ДДС чипове на Аналог дивайс. Може да не може да им буташ таблицата, но пък можеш да ги модулираш амплитудно без проблем, както честотно, че и фазово. |
|
| Автор: | emilvtc [ Вто Мар 04, 2014 9:08 pm ] |
| Заглавие: | Re: DDS генератор |
Така е, но интереса ми не е толкова към синусоидата и вариантите и за модулация, колкото до плейването на периодични сигнали с произволен патърн. |
|
| Автор: | miro_atc [ Сря Мар 05, 2014 1:25 am ] | |||||||||
| Заглавие: | Re: DDS генератор | |||||||||
Какво ще стане си зависи от теб |
||||||||||
| Автор: | Н'бабане Гт'муан'га [ Сря Мар 05, 2014 2:18 am ] |
| Заглавие: | Re: DDS генератор |
Според мен PSoC5LP е подходящия микроконтролер |
|
| Страница 1 от 9 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|