реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> АЦП в xmegaA
V_G
сообщение Feb 4 2012, 08:07
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Цитата(bob1 @ Feb 4 2012, 17:27) *
Так канала 4 и 4 MUX , а снимать результат нужно с 8 выводов. Переключать 1 раз MUX для каждого канала все равно надо.!!!

Это уже следующий уровень после того, как врубишься в работу pipeline ADC. MUX вручную (или через DMA, можно еще поковыряться в мануале) при этом требуется менять в 4 раза реже, причем на каждый канал нужно иметь только 2 настройки MUX. Запустил сразу 4 канала на единичное преобразование, после получения результата поменял настройки всех каналов, и следующие 4 входа снова обрабатываешь параллельно.
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 4 2012, 16:54
Сообщение #17


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 17-09-06
Пользователь №: 20 471



Цитата(V_G @ Feb 4 2012, 14:07) *
Это уже следующий уровень после того, как врубишься в работу pipeline ADC. MUX вручную (или через DMA, можно еще поковыряться в мануале) при этом требуется менять в 4 раза реже, причем на каждый канал нужно иметь только 2 настройки MUX. Запустил сразу 4 канала на единичное преобразование, после получения результата поменял настройки всех каналов, и следующие 4 входа снова обрабатываешь параллельно.

Не пробовали подключить 4 канала к одному выводу ???!! Результат получается разный. Разница в 3-4 единички последнего разряда.!!!! Если конечно потом охота калибровать каждый канал.......
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 4 2012, 18:51
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(bob1 @ Feb 4 2012, 18:54) *
Не пробовали подключить 4 канала к одному выводу ???!! Результат получается разный. Разница в 3-4 единички последнего разряда.!!!! Если конечно потом охота калибровать каждый канал.......


А что это может дать?

Цитата(bob1 @ Feb 4 2012, 18:54) *
Разница в 3-4 единички последнего разряда.!!!!


У меня разброс результата гораздо больше.
Какие у вас настройки предделителя и опоры?


Цитата(V_G @ Feb 4 2012, 04:29) *
Еще раз настаиваю на вдумчивом чтении мануала, в частности, п. 25.4 ADC Сhannels.

С этим согласен...

Цитата(V_G @ Feb 4 2012, 04:29) *
Каждый канал - это сочетание состояния MUX и ячеек результата. Таким образом, переключение каналов - это и переключение MUX.


Не понял...поясните

Цитата(V_G @ Feb 4 2012, 04:29) *
А если вы все 4 канала запускаете во free running mode, они постоянно обновляют свои ячейки результата, переключая за вас MUX.

Обновляют результат - согласен.
Переключают MUX - каким образом?

Цитата(V_G @ Feb 4 2012, 04:29) *
Отказываться от free running mode имеет смысл только в том случае, если вы хотите четкую временную привязку результатов измерений (например, для оцифровки и последующей цифровой фильтрации)

Абсолютная точность (до такта) не нужна, допустимо +-5 мкс.
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 4 2012, 20:51
Сообщение #19


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 17-09-06
Пользователь №: 20 471



Цитата(_Артём_ @ Feb 5 2012, 00:51) *
А что это может дать?
У меня разброс результата гораздо больше.
Какие у вас настройки предделителя и опоры?

Это я к тому, что 4 разных канала одного АЦП оцифровывают одно и тоже напряжение по разному!!!! Это дополнительная погрешность! На мой взгляд целесообразнее в вашем случае использовать 1 канал!!
Разброс 3-4 ед. получен в режиме Idle . Внутр.опора 1В. Частота тактирования Ацп 500кГц.
Поэтому и предложил накопить результат в RAM (контроллер при ацп будет в режиме idle) , а потом обработать его.
Цитата(_Артём_ @ Feb 5 2012, 00:51) *
Обновляют результат - согласен.
Переключают MUX - каким образом?

Программно. Измерили 4 вывода. Поменяли разряды MUX. Потом опять измерили.
В этом варианте при измерениях контроллер тоже можно загнать в режим IDLE.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 4 2012, 21:15
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(bob1 @ Feb 4 2012, 22:51) *
Это я к тому, что 4 разных канала одного АЦП оцифровывают одно и тоже напряжение по разному!!!! Это дополнительная погрешность!

Ну АЦП меги шумит, что делать.
3-4 единицы - это ерунда (у меня был разброс 50 (непомню от какой опоры), и ~30 от опоры на внешнем порту). Видимо очень ранняя ревизия кристала.
Idle как-то не хочется, так как задача далеко не единственная.

Цитата(bob1 @ Feb 4 2012, 22:51) *
Измерили 4 вывода. Поменяли разряды MUX.

Меняете с частотой 500кГц/4?


Цитата(bob1 @ Feb 4 2012, 22:51) *
В этом варианте при измерениях контроллер тоже можно загнать в режим IDLE.

Idle сильно точность повышает?


Go to the top of the page
 
+Quote Post
V_G
сообщение Feb 4 2012, 22:15
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Цитата(bob1 @ Feb 5 2012, 02:54) *
Не пробовали подключить 4 канала к одному выводу ???!! Результат получается разный. Разница в 3-4 единички последнего разряда.!!!! Если конечно потом охота калибровать каждый канал.......

Тут много доп. вводных, в частности, скорость изменения входного сигнала, оцифровка-то ведь все равно последовательная! Плюс выбор тактовой АЦП. Плюс особые требования к разводке платы для 12-разрядного АЦП. Ну а уж потом - глюки АЦП.
Кстати, 3-4 единички в 12-разрядном АЦП - это стояние колом на стандартном 10-разрядном!
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 4 2012, 22:34
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 17-09-06
Пользователь №: 20 471



Цитата(_Артём_ @ Feb 5 2012, 03:15) *
Меняете с частотой 500кГц/4?
Idle сильно точность повышает?

Делим на 8. Через 8 тактов в АЦП результат получается. Менять раньше MUX наверно тоже можно. Напряжение должно захлопнуться на внутреннем конденсаторе. Тут надо в железе попробовать....
Точность в разных режимах не проверял. Нужно было оцифровать 1 сигнал. Меня не устроил результат полученный внутренним АЦП. Поставил внешнее!!!
Цитата(V_G @ Feb 5 2012, 04:15) *
Тут много доп. вводных, в частности, скорость изменения входного сигнала, оцифровка-то ведь все равно последовательная! Плюс выбор тактовой АЦП. Плюс особые требования к разводке платы для 12-разрядного АЦП. Ну а уж потом - глюки АЦП.
Кстати, 3-4 единички в 12-разрядном АЦП - это стояние колом на стандартном 10-разрядном!

Тактовая 500кГц. Пробовал еще уменьшать. Лучше не стало. Напряжение постоянное пробовал. RC цепочка почти на выводах АЦП.


Сообщение отредактировал bob1 - Feb 4 2012, 22:40
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 4 2012, 23:02
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(bob1 @ Feb 5 2012, 00:34) *
Менять раньше MUX наверно тоже можно.

Менять до завершения преобразования?

Цитата(bob1 @ Feb 5 2012, 00:34) *
Точность в разных режимах не проверял. Нужно было оцифровать 1 сигнал. Меня не устроил результат полученный внутренним АЦП. Поставил внешнее!!!

У меня получалось что нормальные результаты получались при делителе начиная от 32-64, до этого чёрти что.

Цитата(bob1 @ Feb 5 2012, 00:34) *
Тактовая 500кГц.

500кГц - тактирование ядра?
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 4 2012, 23:31
Сообщение #24


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 17-09-06
Пользователь №: 20 471



Цитата(_Артём_ @ Feb 5 2012, 05:02) *
Менять до завершения преобразования?
500кГц - тактирование ядра?

Да.
500кГц тактирование АЦП.
Go to the top of the page
 
+Quote Post
V_G
сообщение Feb 5 2012, 00:32
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Цитата(_Артём_ @ Feb 5 2012, 09:02) *
Менять до завершения преобразования?

По-моему, MUX менять можно было произвольно даже в прежних мегах. Просто если в момент смены шло преобразование, оно завершалось со старым MUX, после чего новые настройки вступали в силу
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 12 2012, 14:33
Сообщение #26


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Можно ли так задействовоть ДМА:
по завершению преобразования грузить из ОЗУ новые настройки (MUX и другие) из двух блоков поочерёдно в от CH0.CTRL до CH3.INTFLAGS.
Но непонятно как xmega отреагирует на запись в нереализованные ячейки (от адреса CHn.RESH+1 до CH(n+1).CTRL). Допустимо ли так делать?

Или есть другие варианты перезагрузки MUX, не задействующие процессор?
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 13 2012, 21:57
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(_Артём_ @ Feb 12 2012, 16:33) *
Можно ли так задействовоть ДМА:
по завершению преобразования грузить из ОЗУ новые настройки (MUX и другие) из двух блоков поочерёдно в от CH0.CTRL до CH3.INTFLAGS.

Задействовать можно.
Но по завершению каждого блока генерится прерывание. Можно ли настроить так, чтобы прерывание генерировались после заданного числа циклов перезагрузки настроек каналов АЦП?
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 19:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01634 секунд с 7
ELECTRONIX ©2004-2016