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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
Димон Безпарольн...
сообщение Jun 8 2016, 09:21
Сообщение #16


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Цитата(Сергей Борщ @ Jun 8 2016, 10:26) *
Объявите структуру из 16 результатов преобразования (каждому результату можно дать осмысленное имя нужного канала), создайте массив из этих структур, натравите ПДП (DMA) в кольцевом режиме на этот массив, получив прерывание ПДП об окончании половины пересылки обрабатываете первую половину массива (все данные уже разложены в структуры), получив прерывание об окончании пересылки - обрабатываете вторую половину массива. Все. Больше никаких телодвижений по настройкам АЦП, ПДП и т.п. делать не нужно - оно работает само, знай себе выгребай данные в прерывании ПДП.

Спасибо. Полагаю что DMA будет работать в кольцевом режиме. Что при этом указывать в счетчике пересылок? Число каналов?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 8 2016, 15:33
Сообщение #17


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Димон Безпарольный @ Jun 8 2016, 12:21) *
Спасибо. Полагаю что DMA будет работать в кольцевом режиме. Что при этом указывать в счетчике пересылок? Число каналов?
Ну хоть немного можно же и самостоятельно подумать? Одно преобразование АЦП = 1 канал = 1 пересылка. Если массив из N структур по M каналов в каждой, то всего будет N * M пересылок.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

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

 


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


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