Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Тестирую DAC в XMEGA
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2
zombi
help.gif HELP! help.gif
Тестирую DAC в Atxmega128A1.
Вывожу синусоиду 1кГц оцифровка 22050Гц.
Опорное напряжение DAC - внутреннее 1.00V.
В режиме "Двухканальная работа (каналы 0 и 1 с выборкой хранением)".
В оба канала пишу одинаково.
Работаю только в старших 8-ми разрядах.
Запуск преобразования по событию (таймеру).
И наблюдаю осциллографом выход DAC (рис.1).
Всё вроде красиво.
Подключаю внешний УНЧ.
И слышу постоянный шипящий шум.
Начинаю рассмативать синусоиду (рис.2-3) и вижу постоянно присутствующие колебания на каждой ступеньке!
Рис.4 - это тишина так выглядит!
Что это за постоянный шум? как от него избавиться???
stalko
Цитата(zombi @ Nov 26 2012, 22:59) *
Что это за постоянный шум? как от него избавиться???

Так УНЧ и шумит, возможно. Еще: Провода к УНЧу длинные? Попробуйте коаксиал хороший, ну или хотя бы максимально провода укоротите и можно свить их в витую пару.
P.S. Кстати, повнимательнее присмотрелся, у Вас и на первой картинке тот же шум, только УНЧ-ом не усиленный. Вы на AVCC какое напряжение подаете? VCC? Тогда его фильтровать нужно ОБЯЗАТЕЛЬНО!!!
zombi
Цитата(stalko @ Nov 26 2012, 22:28) *
Так УНЧ и шумит, возможно. Еще: Провода к УНЧу длинные? Попробуйте коаксиал хороший, ну или хотя бы максимально провода укоротите и можно свить их в витую пару.

Внешний унч это мс TDA7057AQ находящаяся на этой же плате и рассторяние проводника 3-4 см.
Предвидя следующий совет скажу: если вход унч отсоединить от выхода DAC и подключить к земле то никакого шума нет (точнее он есть но настолько слабый что меня не беспокоит).
Цитата(stalko @ Nov 26 2012, 22:28) *
P.S. Кстати, повнимательнее присмотрелся, у Вас и на первой картинке тот же шум, только УНЧ-ом не усиленный.

Все осцилограммы это выход DAC прямо на ноге процессора. УНЧ тут нипричем.
Цитата(stalko @ Nov 26 2012, 22:28) *
Вы на AVCC какое напряжение подаете? VCC? Тогда его фильтровать нужно ОБЯЗАТЕЛЬНО!!!

Питание на AVCC подаю согласно DS через ферритовую бусину.
Между каждым пином AVCC и землёй 100нФ и один общий конденсатор 10мкФ.
Хотя пробывал и без бусины и через просто резистор (от 5 до 30 ом ставил) результата никакого, кроме падения AVCC.
stalko
Цитата(zombi @ Nov 26 2012, 23:42) *
Все осцилограммы это выход DAC прямо на ноге процессора. УНЧ тут нипричем.

Пардон, неверно понял Ваши слова... На второй картинке просто развернутый сигнал, а я сначала подумал, что с УНЧа уже...
Пара дурацких идей с моей стороны:
1. Звон может быть как по питанию AVCC, так и по связанной с ним землей. Посмотрите осциллом, что делается между входной землей и "аналоговой" на проце. То же самое на AVCC уже после всех бусинок.
2. Бусинки все ж таки не лучший вариант, как показала практика. Я ставлю муратовские фильтры.
3. Сигнал по-любому хорошо бы "обкатать", так как не эти шумы, так шумы дискретизации будут иметь место быть. Поставьте перед УНЧ примитивный ФНЧ-шник. Понимаю, что Вы скажете, что лечим не причину, а симптоматику, и тем не менее...

Цитата(zombi @ Nov 26 2012, 23:42) *
Внешний унч это мс TDA7057AQ находящаяся на этой же плате и рассторяние проводника 3-4 см.
Предвидя следующий совет скажу: если вход унч отсоединить от выхода DAC и подключить к земле то никакого шума нет (точнее он есть но настолько слабый что меня не беспокоит).

Один вопрос: какой частоты вообще планируется гонять аналоговый сигнал через этот ЦАП?
zombi
Цитата(stalko @ Nov 26 2012, 23:04) *
Один вопрос: какой частоты вообще планируется гонять аналоговый сигнал через этот ЦАП?

Максимум хочу выводить оцифрованные мелодии с частотой дискретизации 44100 Гц.
Так что думаю 12-15 кГц максимум наверное.
stalko
Цитата(zombi @ Nov 27 2012, 00:14) *
Максимум хочу выводить оцифрованные мелодии с частотой дискретизации 44100 Гц.
Так что думаю 12-15 кГц максимум наверное.

Ну тогда, думаю, можно ФНЧ поставить перед ФВЧ, что уже наверняка у Вас стоит, как положено TDA-шке...
И еще дурная мысль возникла: а попробуйте один канал выключить (ВООБЩЕ) и гнать только, например, левый канал непрерывно... Ситуация, случаем, не изменится?
zombi
Цитата(stalko @ Nov 27 2012, 00:18) *
И еще дурная мысль возникла: а попробуйте один канал выключить (ВООБЩЕ) и гнать только, например, левый канал непрерывно... Ситуация, случаем, не изменится?

Неа ничё не меняется.

Понял свою ошибку.
Работал не в старших а в младших разрядах.
Приходилось громкость на унч поднимать чтобы чоть что нибудь услышать.
Переделал на старшие разряды. Громкость унч понизил и шумы тоже снизились до приемлемого уровня.
Всё поёт как надо.
Но получается что к младшим двум разрядам DACа доверия вообще никакого!
stalko
Цитата(zombi @ Nov 27 2012, 02:43) *
Но получается что к младшим двум разрядам DACа доверия вообще никакого!

Ну, к младшему никогда особого доверия и не было, в общем-то. А вот чтоб К ДВУМ... это грустно...
vgo1
С внутренним ЦАП-ом контроллеров я не работал но часто пользуясь их АЦП. Для понижения уровня шума, наводимого ядром контроллера, рекомендуется поставить контроллер в Idle mode. Может такой прием можно делать и при ЦАП?
zombi
Цитата(vgo1 @ Nov 27 2012, 21:02) *
Для понижения уровня шума, наводимого ядром контроллера, рекомендуется поставить контроллер в Idle mode. Может такой прием можно делать и при ЦАП?

Для АЦП может и можно Idle использовать, но для ЦАП вобще не представляю как это возможно.

Цитата(stalko @ Nov 27 2012, 06:02) *
Ну, к младшему никогда особого доверия и не было, в общем-то. А вот чтоб К ДВУМ... это грустно...

Похоже что вообще "шумят" все четыре младших разряда.
Пока что приемлемое соотношение звук/шум получился при работе только в 8-ми старших разрядах ЦАП.
V_G
Внешнюю опору не пробовали?
Хорошо отфильтрованную...
zombi
Цитата(V_G @ Nov 28 2012, 02:50) *
Внешнюю опору не пробовали?

Пока не пробывал. Думаю завтра поэкспериментировать.
Пока только заметил что при опорном внутреннем 1V шум меньше чем при опорном AVCC.
Цитата(V_G @ Nov 28 2012, 02:50) *
Хорошо отфильтрованную/...

Что значит хорошо отфильтрованную?
Какой фильтр посоветуете?
V_G
Цитата(zombi @ Nov 28 2012, 09:56) *
Что значит хорошо отфильтрованную?
Какой фильтр посоветуете?

Да просто большой конденсатор от опоры на аналоговую землю.
Я к тому, что шумы на выходе могут появиться не только от шумов собственно компонентов ЦАП, но и от шумов опоры, и прежде чем катить бочку на ЦАП, стоит убрать сопутствующие источники шумов. Там, правда, и питание, и разводка роль играют...
Ну, и вместе с осциллограммой сигнала наблюдать осциллограмму опоры.
zombi
Цитата(V_G @ Nov 28 2012, 05:56) *
Да просто большой конденсатор от опоры на аналоговую землю.

К сожалению у иксмег нет аналоговой земли.
stalko
Цитата(zombi @ Nov 28 2012, 15:36) *
К сожалению у иксмег нет аналоговой земли.

Есть подозрение, что есть... Та земля, что находится рядом с AVCC. А тот факт, что она так же помечена просто GND - ошибка описания... По-крайней мере я свою схему рисовал исходя их данного предположения.
V_G
По-любому хотелось бы видеть осциллограмму опоры относительно той же земли, что и зашумленные осциллограммы в начале топика (да, со сдвинутым в сторону младших разрядов выходом).
zombi
Цитата(stalko @ Nov 28 2012, 14:45) *
Есть подозрение, что есть... Та земля, что находится рядом с AVCC.
Предполагать то можно что угодно. Хочется уверенности.
Цитата(stalko @ Nov 28 2012, 14:45) *
А тот факт, что она так же помечена просто GND - ошибка описания...
Ничего себе, как Вы Atmel опустили.
Цитата(stalko @ Nov 28 2012, 14:45) *
По-крайней мере я свою схему рисовал исходя их данного предположения.
И какой результат? Есть ли разница считать земляные пины возле AVCC аналоговой землёй или нет? при том что все они звонятся с основной землёй.

Цитата(V_G @ Nov 28 2012, 04:56) *
Я к тому, что шумы на выходе могут появиться не только от шумов собственно компонентов ЦАП, но и от шумов опоры, и прежде чем катить бочку на ЦАП, стоит убрать сопутствующие источники шумов.

На AREFA питание подал через резистор 51 ом и конденсатор 470 мкФ на землю, результата ноль.
Шум такой же как и при работе относительно AVCC.
stalko
Цитата(zombi @ Nov 29 2012, 05:10) *
Предполагать то можно что угодно. Хочется уверенности.

Напишите в службу поддержки biggrin.gif
Цитата(zombi @ Nov 29 2012, 05:10) *
Ничего себе, как Вы Atmel опустили.

Думаю, после той кучу косяков в их фреймворке, что я поправил, пока USB запускал, я имею на это некоторое право. Тем более, как по-Вашему: сказать, что они даже "чистой" земли не выделили на кристалле - это их не опустить?
Цитата(zombi @ Nov 29 2012, 05:10) *
И какой результат? Есть ли разница считать земляные пины возле AVCC аналоговой землёй или нет?

А вот на этот вопрос не могу ответить: завести-то я завел... а вот ни ЦАП, ни АЦП у меня в схеме не задействованы, на самом деле. Это я уж так, на всякий случай.
zombi
Цитата(stalko @ Nov 29 2012, 07:13) *
завести-то я завел...

Можете схему подключения предполагаемой AGND привести?

Цитата(V_G @ Nov 28 2012, 16:39) *
По-любому хотелось бы видеть осциллограмму опоры относительно той же земли,

Ch1-VCC
Ch2-AVCC
Ch3-AREF
V_G
Так выходит, у вас уровень шумов с картинки в начале топика совпадает с уровнем шумов опоры?
Тогда какие претензии к ЦАП?
stalko
Цитата(zombi @ Nov 29 2012, 12:39) *
Можете схему подключения предполагаемой AGND привести?

Я пускал через муратовский фильтр от цифровой земли... Так же поступал и с AVCC
Цитата(zombi @ Nov 29 2012, 12:39) *
Ch1-VCC
Ch2-AVCC
Ch3-AREF

Мягко говоря грязное питание... Надо AVCC чистить однозначно. Те же муратовские фильтры питания - шикарная вещь в таких случаях. Предвидя вопрос какие, отвечаю: если надо, скажу завтра, на память не помню, а схемы все на работе. Вообще, лучше, чтоб питание сначала шло на аналоговую часть, а с нее уже - на цифру. При этом все равно развязанная фильтрами. Как навороченный вариант: независимые вторичники, но я этого не люблю, лично.
zombi
Цитата(stalko @ Nov 29 2012, 17:43) *
Те же муратовские фильтры питания - шикарная вещь в таких случаях. Предвидя вопрос какие, отвечаю: если надо, скажу завтра, на память не помню,

Ага, если не затруднит.

Цитата(V_G @ Nov 29 2012, 15:14) *
Так выходит, у вас уровень шумов с картинки в начале топика совпадает с уровнем шумов опоры?

Да я уже и сам вижу crying.gif

Но напрягает вот это (щуп просто соединён с землёй осциллографа):
bob1
Цитата(zombi @ Nov 28 2012, 05:16) *
Для АЦП может и можно Idle использовать, но для ЦАП вобще не представляю как это возможно.
Один из вариантов. Данные из ОЗУ через DMA по сигналам таймера перекидываються в буфер DAC. Может и младший бит начнет играть роль biggrin.gif
zombi
Цитата(bob1 @ Nov 29 2012, 19:39) *
Один из вариантов. Данные из ОЗУ через DMA по сигналам таймера перекидываються в буфер DAC. Может и младший бит начнет играть роль biggrin.gif

Может и начнёт. Только Idle мне не подходит. У процессора есть дела поважнее звука biggrin.gif
stalko
Цитата(zombi @ Nov 29 2012, 19:07) *
Но напрягает вот это (щуп просто соединён с землёй осциллографа):

Ну, для 20мВ/дел не так и плохо... На Ваших-то осциллограммах все "немного сильно" хуже
zombi
Цитата(stalko @ Nov 29 2012, 21:47) *
Ну, для 20мВ/дел не так и плохо... На Ваших-то осциллограммах все "немного сильно" хуже

Что значит "немного сильно"? biggrin.gif Это немного хуже или сильно хуже???
На всех моих осцилограммах (кроме первой) 20мВ/дел.
Получается что я шум этот просто немогу увидеть. Придётся на слух (в слепую) работать. biggrin.gif
stalko
Цитата(zombi @ Nov 30 2012, 03:38) *
Что значит "немного сильно"? biggrin.gif Это немного хуже или сильно хуже???

Это значит шутку юмора biggrin.gif
Цитата(zombi @ Nov 30 2012, 03:38) *
На всех моих осцилограммах (кроме первой) 20мВ/дел.

Да, шкала у Вас везде одинаковая, но в первых случаях шумов все же больше. А у Вас щуп с делителем стоит? Это, кстати, принципиальный вопрос.
Опять таки, присмотрелся, у Вас на последей картинке вообще есть постоянное смещение, хотя и копеечное... Вот это с чего, вдруг, я е допонял. Попробуйте кнопочку "AutoScale" (или как она там?). Случается, что она чудесным образом "исцеляет" осцилы...
ILYAUL
Цитата
Но напрягает вот это (щуп просто соединён с землёй осциллографа):

Ну и сделай ему PROBE CHECK
stalko
Цитата(zombi @ Nov 29 2012, 19:07) *
Ага, если не затруднит.

Короче, BLM31 у меня стояли... У меня стояли на большой максимальный ток, чтоб не плодить номенклатуру (они же стояли на выходе вторичных источников просто). Вам, думаю, BLM31AJ601SN1 вполне пойдет
ILYAUL
Я уже в теме ответил- PROBE CHECK. Выстави PROBE в 1X , нажми кнопку, на вопрос ответь нет. Да забыл сказать , щуп к PROBE COMP подсоедини , вместе с землёй
zombi
Цитата(ILYAUL @ Dec 2 2012, 00:58) *
Я уже в теме ответил- PROBE CHECK. Выстави PROBE в 1X , нажми кнопку, на вопрос ответь нет.

Ну сделал.
Ничего не поменялось кроме шкалы по вертикали.
Зачем именно PROBE CHECK делать?
zombi
Цитата(stalko @ Nov 30 2012, 23:35) *
Вам, думаю, BLM31AJ601SN1 вполне пойдет

Именно такого не нашел. Вот такой поставил BLM31PG601SN1.
НИКАКОГО ЭФФЕКТА!!!
Как шумело так и шумит.
stalko
Цитата(zombi @ Dec 2 2012, 16:27) *
Именно такого не нашел. Вот такой поставил BLM31PG601SN1.
НИКАКОГО ЭФФЕКТА!!!
Как шумело так и шумит.

В принципе, PG (ЕМНИП), имеет больше ток рабочий, так что подошел бы...
А шумит именно с ЦАПа, или питание тоже шумит так же?
Стоят BLM-ки и по питанию, и по земле? И после них у меня прям почти на ногах кондер стоит 0.1мк...
Еще вопрос, уже по топологии. Как у Вас идет цепь этой аналоговой земли и питания по плате?
Сначала на цифру, потом приходит на аналог, сначала на аналог, потом на цифру, или они ветвятся начиная от стабилизатора?
Еще вариант, немного геморойный, но может точки над I расставить. Попробуйте поднять ноги AVCC и соседней земли, провода припаиваете, ставите кондер, далее две BLMки (все "на соплях"), а оттуда прям этими же проводами на землю и питание со стабилизатора, в обход печати. Если у Вас стоит дроссель после стабилизатора (например), то паяйтесь еще ДО дросселя, ближе к микросхеме стабилизатора.
zombi
Цитата(stalko @ Dec 2 2012, 16:12) *
А шумит именно с ЦАПа, или питание тоже шумит так же?

Да хрен его знает что шумит.
Цитата(stalko @ Dec 2 2012, 16:12) *
Еще вопрос, уже по топологии. Как у Вас идет цепь этой аналоговой земли и питания по плате?
Сначала на цифру, потом приходит на аналог, сначала на аналог, потом на цифру, или они ветвятся начиная от стабилизатора?

Аналоговой земли нет. Одна общая земля - сплошной полигон во внутр. слое.
А как должно быть ?
1. cначала на цифру, потом на аналог
2. сначала на аналог, потом на цифру
3. ветвить начиная от стабилизатора
Цитата(stalko @ Dec 2 2012, 16:12) *
Еще вариант, немного геморойный, но может точки над I расставить. Попробуйте поднять ноги AVCC и соседней земли, провода припаиваете, ставите кондер, далее две BLMки (все "на соплях"), а оттуда прям этими же проводами на землю и питание со стабилизатора, в обход печати. Если у Вас стоит дроссель после стабилизатора (например), то паяйтесь еще ДО дросселя, ближе к микросхеме стабилизатора.

Нимнохо хеморный biggrin.gif это слабо сказано. На tqfp100 соседние ноги поднять да ещё и припаять к ним чегото. И у иксмеги два AVCC и земля рядом с каждым. Это уже 4-ре. Капец.
Но видать придётся пробывать.
ILYAUL
Цитата(zombi @ Dec 2 2012, 02:13) *
Ну сделал.
Ничего не поменялось кроме шкалы по вертикали.
Зачем именно PROBE CHECK делать?

zombi
При Probe 1X и 20mV/div у меня тоже так. Поставь при том же 1Х 2mV/div.
ILYAUL
Ну лучше не сделать
stalko
Цитата(zombi @ Dec 2 2012, 17:30) *
А как должно быть ?

Ну, я предпочитаю ветвить прям от стабилизатора.
Цитата(zombi @ Dec 2 2012, 17:30) *
Нимнохо хеморный biggrin.gif это слабо сказано. На tqfp100 соседние ноги поднять да ещё и припаять к ним чегото. И у иксмеги два AVCC и земля рядом с каждым. Это уже 4-ре. Капец.

У Вас А1 чтоли? ))) Раз 100-ногая... У меня А3 и там 64 ноги, и AVCC одна, мне проще... Хотя, поднять 4 ноги - не самое большое удовольствие, но и суперсложности в этом не вижу. Ну, если Вам так проще, порежьте подходящие дорожки к ногам, и на них напаяйтесь, потом восстановите, если что...
Kovrov
так я не понял, вы опорник внешний ставили?
хотябы tl431 напряжение будет 2,5 вольта
что несколько сместит отношение сигнал шум.

от себя добавлю . юзал цап на 32а4
вынужден отказаться от затеи в пользу внешнего цап.
из за взаимного влияния между каналами (я как то писал здесь на форуме про этот глюк)
попробуйте все свои эксперименты проделать
с активным только 1м каналом и внешним опорником
zombi
Может будет кому интересно:

Поменял A1 на A1U и шумы пропали yeah.gif

Видать подправили что то в цапе.
_Артём_
Цитата(zombi @ Jan 28 2013, 23:44) *
Видать подправили что то в цапе.

А в АЦП у них как? 12 бит есть?
ILYAUL
Цитата(_Артём_ @ Jan 29 2013, 01:53) *
А в АЦП у них как? 12 бит есть?

Это один в один +USB
zombi
Цитата(_Артём_ @ Jan 29 2013, 01:53) *
А в АЦП у них как? 12 бит есть?

АЦП не использую и не проверял.

А у ЦАПа 10 бит работают на много лучше чем у простой Aшки.
Ещё и дебильный регистр TIMCTRL выкинули! yeah.gif
МП41
А я работаю с ЦАПом на ATXmega128A1, вроде ревизия E. DAC0 работает и на слух и по осциллографу хорошо, а вот DAC1 шумит-свистит, что я только не делал. Выводил пилу, так она шумит только в районе низких значений, т.е. ближе к нулю, грубо говоря, вся пила ровная кроме самой нижней части, где виден какой-то странный мусор.
Kovrov
Ребят может кто пробывал более новые XMEGA c буквой U
не получше там цап ?
zombi
Цитата(zombi @ Jan 29 2013, 00:44) *
Может будет кому интересно:

Поменял A1 на A1U и шумы пропали yeah.gif

Видать подправили что то в цапе.

Xenia
Цитата(zombi @ Jan 29 2013, 00:44) *
Может будет кому интересно:
Поменял A1 на A1U и шумы пропали yeah.gif
Видать подправили что то в цапе.


У меня обычная A1, но ЦАП не шумит sm.gif. Впрочем, у каждого могут быть свои требования к шуму ЦАПа - кому-то существующий шум кажется допустимым, а кому-то излишне большим.

Чтобы шум не был заметным, DAC_REFRESH не должен быть слишком коротким. Например, у меня так:
DACA.TIMCTRL = DAC_CONINTVAL_128CLK_gc | DAC_REFRESH_1024CLK_gc;

Впрочем, у меня ЦАП еще использует внешнее опорное напряжение 2.5V от AP431 (adjustable precision shunt regulator), а это тоже может влиять на уровень шума.
Kovrov
2 zombi : это я видел.
--
да шум пол-беды
меня беспокоило взаимо-влияние с канала на канал
-
сам добрался до устройства в котором была xmega32a4
поменял на а4u
действительно все проблемы исчезли
даже калибровка работает..
zombi
Цитата(Kovrov @ Mar 24 2015, 21:16) *
поменял на а4u
действительно все проблемы исчезли
даже калибровка работает..

Ну, так, а я о чём.

Цитата(Xenia @ Mar 22 2015, 10:52) *
DACA.TIMCTRL = DAC_CONINTVAL_128CLK_gc | DAC_REFRESH_1024CLK_gc;

TIMCTRL - нет такого регистра у AxU
Xenia
Цитата(zombi @ Mar 25 2015, 00:37) *
TIMCTRL - нет такого регистра у AxU


До EWAVR 6.21 (включительно) был, а начиная с 6.30 куда-то исчез (превратился в reserved_0x04).
Как же вы теперь без него живете? sm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.