Страница 1 из 1

Прерывания при двойной буферизации дма,ацп от таймера

Добавлено: Ср ноя 20, 2013 20:54:37
castiel92
Возник такой вопрос.при использовании двойной буферизации прерывание transfer complete вызывается при заполнении двух буферов или одного? от таймера вызываю срабатывание ацп,отсчеты кладутся с помощью дма в буфер.почему-то прерывания вызываются с вдвое меньшей частотой,чем нужно,вроде все верно настроил.думаю может ацп не успевает получить отсчет и пропускает один запрос от таймера,возможно ли такое?

Re: Прерывания при двойной буферизации дма,ацп от таймера

Добавлено: Чт ноя 21, 2013 13:32:19
amv2000
castiel92 писал(а):при использовании двойной буферизации прерывание transfer complete вызывается при заполнении двух буферов или одного?
По заполнении данными больше половины буфера, выставляется Half Transfer Interrupt Flag (HTIFx),
По заполнении всего буфера выставляется Transfer Complete Interrupt Flag (TCIFx).

Re: Прерывания при двойной буферизации дма,ацп от таймера

Добавлено: Чт ноя 21, 2013 21:23:07
mrFox
castiel92 писал(а):.при использовании двойной буферизации прерывание transfer complete вызывается при заполнении двух буферов или одного? ... отсчеты кладутся с помощью дма в буфер.почему-то прерывания вызываются с вдвое меньшей частотой ...
флажок Half transfer interrupt enable поставили ?

Re: Прерывания при двойной буферизации дма,ацп от таймера

Добавлено: Чт ноя 21, 2013 21:27:30
castiel92
А все разобрался,при заполнении одного из буферов вызывается прерывание transfer complete.half transfer не ставил. прерывания вызывались с вдвое меньшей частотой из-за того,что ацп не успевало получать отсчет в период между запросами от таймера