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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> АЦП в xmegaA
_Артём_
сообщение Jan 31 2012, 23:44
Сообщение #1


Гуру
******

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



Задача такая нужно оцифровывать все каналы АЦП А и B поочереди, например сначала каналы 0-3, затем 4-7 и так по циклу. Очевидный вариант: по прерыванию АПЦ считывать значения, устанавливать новые значения MUX и запуск след. преобразования.
Какие есть способы сделать оцифровку, минимально используя процессор? Можно как-то задействовать ДМА или систему событий и разгрузить ЦПУ? Или такой возможности нет.
Спасибо.
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 2 2012, 11:18
Сообщение #2


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

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



Через прерывания нерационально!!! ДЛя одного канала АЦП делал так. Все работает в режиме IDle.
1. Счетчик через систему событий запускает Каналы 0-3 Ацп.
2. DMA настраиваем на передачу по 8 бит в ОЗУ(RAM) по команде от 3 или 2 канала АЦП.
По аналогии можно думаю сделать и для двух АЦП.
Успехов!!


Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 2 2012, 13:00
Сообщение #3


Гуру
******

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



Цитата(bob1 @ Feb 2 2012, 13:18) *
Через прерывания нерационально!!!

Конечно нерационально, потому и спрашиваю.

Цитата(bob1 @ Feb 2 2012, 13:18) *
1. Счетчик через систему событий запускает Каналы 0-3 Ацп.
2. DMA настраиваем на передачу по 8 бит в ОЗУ(RAM) по команде от 3 или 2 канала АЦП.
По аналогии можно думаю сделать и для двух АЦП.


Проблема в том как загрузить в MUX другое значение. И возможно ли это.
Go to the top of the page
 
+Quote Post
Kovrov
сообщение Feb 2 2012, 17:12
Сообщение #4


Мастер-фломастер
****

Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700



Может поможет...
недавно у себя делал так...
дма работает на буфер передача 128+ N преобразований
по прерыванию с дма обрабатываю массив полученных данных
переключаю мукс на другой канал...
Феничка в том , что не заморачиваюсь с косячными преобразованиями при переключениями мультиплексора АЦП - просто пропускаю эти N преобразований в начале буфера и работаю только с актуальными данными.. (обычно N при F=32 мгц и Fadc = F/64 это 4- подбиралось опытным путем)


--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 2 2012, 17:47
Сообщение #5


Гуру
******

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



Цитата(Kovrov @ Feb 2 2012, 19:12) *
дма работает на буфер передача 128+ N преобразований
по прерыванию с дма обрабатываю массив полученных данных
переключаю мукс на другой канал...

массив 128*sizeof(unsigned short)? Много занимает, однако.

Цитата(Kovrov @ Feb 2 2012, 19:12) *
переключаю мукс на другой канал...

То есть переключать можно только вручную (периферия не может переключить)?
Это и плохо...

Цитата(Kovrov @ Feb 2 2012, 19:12) *
Феничка в том , что не заморачиваюсь с косячными преобразованиями при переключениями мультиплексора АЦП - просто пропускаю эти N преобразований

А они косячные? Незаметил.
Что у вас в качестве опоры? И какой разброс в результатах преобразования.
Сколько виртуальных каналов используете?

Go to the top of the page
 
+Quote Post
V_G
сообщение Feb 3 2012, 02:52
Сообщение #6


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

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



Читайте мануал.
В версии мануала от 12/09 на с 299 (п.25.9.6) - пример работы 4 каналов в free running mode без всяких прерываний, просто достаете измеренные значения из памяти нужных каналов
Другой вариант - п. 25.16.4 - настройка регистра EVCTRL на Sweep Channels - изучите и этот вариант ( не пробовал, но вроде должно отвечать вашим потребностям)

Сообщение отредактировал V_G - Feb 3 2012, 02:53
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 3 2012, 14:38
Сообщение #7


Гуру
******

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



Цитата(V_G @ Feb 3 2012, 04:52) *
Читайте мануал.
В версии мануала от 12/09 на с 299 (п.25.9.6) - пример работы 4 каналов в free running mode без всяких прерываний, просто достаете измеренные значения из памяти нужных каналов
Другой вариант - п. 25.16.4 - настройка регистра EVCTRL на Sweep Channels - изучите и этот вариант ( не пробовал, но вроде должно отвечать вашим потребностям)

free running mode недостаточно - нужно ещё MUX перегружать, и тут я не виду средств как это может быть сделано.

Цитата(V_G @ Feb 3 2012, 04:52) *
Другой вариант - п. 25.16.4 - настройка регистра EVCTRL на Sweep Channels - изучите и этот вариант ( не пробовал, но вроде должно отвечать вашим потребностям)


Посмотрю. Спасибо, вдруг - оно.
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 3 2012, 15:32
Сообщение #8


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

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



В MUX можете также грузить посредством DMA из оперативки. Кто мешает?!!??!!
Прога критична по времени?? Может можно обойтись 1 каналом!!

Сообщение отредактировал bob1 - Feb 3 2012, 15:33
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 3 2012, 15:53
Сообщение #9


Гуру
******

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



Цитата(bob1 @ Feb 3 2012, 17:32) *
В MUX можете также грузить посредством DMA из оперативки.

Как?
Буду искать...

Цитата(bob1 @ Feb 3 2012, 17:32) *
Кто мешает?!!??!!

Нужно грузить не просто MUX, а четыре MUX.

Цитата(bob1 @ Feb 3 2012, 17:32) *
Прога критична по времени??

Критична - много команд получается.

Цитата(bob1 @ Feb 3 2012, 17:32) *
Может можно обойтись 1 каналом!!

Тогда уже некритична, но результат медленный (не удовлетворяет TЗ)

Цитата(bob1 @ Feb 3 2012, 17:32) *
Может можно обойтись 1 каналом!!

Давайте может тогда на бейсике писать будем, получим 1 8-битный отсчёт в секунду и хватит?
Зачем тогда 12-бит АЦП с четерьмя параллельными каналами?
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 3 2012, 18:01
Сообщение #10


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

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



Было проще общаться было бы тех задание или хотя бы скорость опроса !!???
Насчет MUx погорячился!! Адреса регистров 4 MUX идут не один за другим и продеться использовать 4 канала DMA.
Если использовать 1 канал АЦП, то MUX этого канала можно изменить.( совпадение (переполнение) в счетчике через канал событий инициирует передачу через DMA из ячеек RAM в 1 регистр MUX).


Сообщение отредактировал bob1 - Feb 3 2012, 18:01
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 3 2012, 18:39
Сообщение #11


Гуру
******

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



Цитата(bob1 @ Feb 3 2012, 20:01) *
Было проще общаться было бы тех задание или хотя бы скорость опроса !!???

Вродь в первом посте ТЗ.
Скорость оцифровки 16-20 кГц.
Ещё можно тут посмотреть (тема по сути таже): АЦП?С++


Цитата(bob1 @ Feb 3 2012, 20:01) *
Насчет MUx погорячился!!

Похоже на то.

Цитата(bob1 @ Feb 3 2012, 20:01) *
Адреса регистров 4 MUX идут не один за другим и продеться использовать 4 канала DMA.

Так ДМА не напасёшься (хотя и не исплользую из, но жалко отдавать сразу все).

Цитата(bob1 @ Feb 3 2012, 20:01) *
Если использовать 1 канал АЦП, то MUX этого канала можно изменить.( совпадение (переполнение) в счетчике через канал событий инициирует передачу через DMA из ячеек RAM в 1 регистр MUX).

Интересно.
А запуск следущего кто сделает и результат считает?

Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 3 2012, 19:30
Сообщение #12


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

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



Скорость небольшая!!
1 канал DMa настраиваем на запуск скажем от переполнения счетчика. Он будет передавать по 2 байта из RAM сначала в регистр MUX и потом регистр CTRL и тем самым запустит начало преобразования. В RAM лежат 16 байт. Это 8 значений для MUX и 8 значений для регистра CTRL. Их положить через один. По передачи 16 байт сделать , чтобы адрес принял начальное значение. Счетчик каждый раз переполняясь запустит DMA, а тот по очереди АЦП для 8 разных выводов.
2 канал DMA настраиваем на запуск от АЦП канал СH0. Канал DMA будет передавать значения АЦП( по 2байта) в RAM.

Сообщение отредактировал bob1 - Feb 3 2012, 19:48
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 3 2012, 20:37
Сообщение #13


Гуру
******

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



Цитата(bob1 @ Feb 3 2012, 21:30) *
Скорость небольшая!!


Ничего себе небольшая: если программно делать, то загрузка меги 20-30 % на 29,5 МГц.


Цитата(bob1 @ Feb 3 2012, 21:30) *
1 канал DMa настраиваем на запуск скажем от переполнения счетчика. Он будет передавать по 2 байта из RAM сначала в регистр MUX и потом регистр CTRL и тем самым запустит начало преобразования. В RAM лежат 16 байт. Это 8 значений для MUX и 8 значений для регистра CTRL. Их положить через один. По передачи 16 байт сделать , чтобы адрес принял начальное значение. Счетчик каждый раз переполняясь запустит DMA, а тот по очереди АЦП для 8 разных выводов.
2 канал DMA настраиваем на запуск от АЦП канал СH0. Канал DMA будет передавать значения АЦП( по 2байта) в RAM.

Но используется 1 виртуальный канал? 8 отсчётов за раз не получим?
Только если все ДМА на это дело израсходовать.
И то не уверен что получится...сложно как то...
Go to the top of the page
 
+Quote Post
V_G
сообщение Feb 4 2012, 02:29
Сообщение #14


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

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



Цитата(_Артём_ @ Feb 4 2012, 00:38) *
free running mode недостаточно - нужно ещё MUX перегружать, и тут я не виду средств как это может быть сделано.

Еще раз настаиваю на вдумчивом чтении мануала, в частности, п. 25.4 ADC Сhannels. Каждый канал - это сочетание состояния MUX и ячеек результата. Таким образом, переключение каналов - это и переключение MUX. А если вы все 4 канала запускаете во free running mode, они постоянно обновляют свои ячейки результата, переключая за вас MUX. Отказываться от free running mode имеет смысл только в том случае, если вы хотите четкую временную привязку результатов измерений (например, для оцифровки и последующей цифровой фильтрации)
Go to the top of the page
 
+Quote Post
bob1
сообщение Feb 4 2012, 07:27
Сообщение #15


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

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



Цитата(_Артём_ @ Feb 4 2012, 01:37) *
Ничего себе небольшая: если программно делать, то загрузка меги 20-30 % на 29,5 МГц.
Но используется 1 виртуальный канал? 8 отсчётов за раз не получим?
Только если все ДМА на это дело израсходовать.
И то не уверен что получится...сложно как то...

8 отчетов за раз не получим. Опрос 8 выводов по кругу.
С 4 каналами можно получить скорость оцифровки 500кГц. У Вас на порядок меньше!!!
По поводу DMA --второй канал ( результат перекидывающий в RAM)можете не использовать. Программно считывать значения и обрабатывать их.
Итого получаем затраты 2 канала DMA на каждый АЦП (А и В) , 1 счетчик.
Что за виртуальный канал??


Цитата(V_G @ Feb 4 2012, 07:29) *
Еще раз настаиваю на вдумчивом чтении мануала, в частности, п. 25.4 ADC Сhannels. Каждый канал - это сочетание состояния MUX и ячеек результата. Таким образом, переключение каналов - это и переключение MUX. А если вы все 4 канала запускаете во free running mode, они постоянно обновляют свои ячейки результата, переключая за вас MUX. Отказываться от free running mode имеет смысл только в том случае, если вы хотите четкую временную привязку результатов измерений (например, для оцифровки и последующей цифровой фильтрации)

Так канала 4 и 4 MUX , а снимать результат нужно с 8 выводов. Переключать 1 раз MUX для каждого канала все равно надо.!!!
Go to the top of the page
 
+Quote Post
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:21
Рейтинг@Mail.ru


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