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

 
 
> STM32F373R8 проблема с АЦП+ПДП и сторожем таймером, При работе с таймером в беск. цикле, замедляется сбор данных с АЦП
ZiB
сообщение May 17 2013, 10:11
Сообщение #1


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

Группа: Свой
Сообщений: 122
Регистрация: 26-07-05
Из: Россия, Томск
Пользователь №: 7 109



Добрый день!

Столкнулся с проблемкой на STM32F373R8 (возможно есть и на других мк, пока не было времени проверить).

Системная тактовая частота 12 МГц.

Работаю с АЦП1 (12 битное).
Предделитель АЦП = 2.
АЦП настроено на непрерывное преобразование с минимальным временем выборки.
Частота преобразований получается (12МГц/2)/(14 тактов одно преобразование) = ~430 кГц.

Данные с АЦП забирает ПДП (DMA) контроллер.

Все работает прекрасно.

Однако когда в коде встречается цилический доступ к регистрам сторожевого таймера, то частота преобразований падет до 190 кГц.

Код
    while (1)
    {
        IWDG->KR = 0xAAAA;
    }


Проверял с регистрами IWDG->RLR, IWDG->PR.

Активность таймера не влияет на ошибку (т.е. и со включенным и с выключенным таймером).

При увеличении времени выборки, т.е. при сниженнии частоты преобразования данная проблема исчезает.

Может кто сталкивался с данной проблемкой и знает, где почитать более детально о работе ПДП и задрежках на шинах ?

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ZiB
сообщение May 19 2013, 06:45
Сообщение #2


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

Группа: Свой
Сообщений: 122
Регистрация: 26-07-05
Из: Россия, Томск
Пользователь №: 7 109



Сходил за платой...

Нашел место, но не понял причину.

Странная штука получается, в обоих мк (STM32F303 и STM32F373) независимый таймер подключен к шине АВР1, правда АЦП сидят на разных шинах.
В 303 снижение частоты АВР1 в 16 раз, ни дает ни какого эффекта, а вот в 373 это приводит к торможению обмена АЦП, хотя АЦП подключен к APB2.

В 100-ом похожая структура и там тоже аналогичная ситуация, процесс передачи данных замедляется.

В 407-ом замедления нет, но структура похожа на 100 и 373.

--------
Получается в 100-ом, 373-ом при обращение к любой переферии на шине АВР1, тормозится процесс обмена.
В 407-ом и 303, нет замедления.

Кто подскажет как прогнозировать данный процесс ?


Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение

 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ZiB   STM32F373R8 проблема с АЦП+ПДП и сторожем таймером   May 17 2013, 10:11
- - vlad_new   M3 делит шину между ядром и ДМА с коэффициентом 1:...   May 17 2013, 14:29
|- - jcxz   Цитата(vlad_new @ May 17 2013, 20:29) M3 ...   May 18 2013, 04:27
|- - _Артём_   Цитата(jcxz @ May 18 2013, 07:27) Хм.... ...   May 18 2013, 06:11
|- - jcxz   Цитата(_Артём_ @ May 18 2013, 12:11) Нужн...   May 18 2013, 17:04
|- - _Артём_   Цитата(jcxz @ May 18 2013, 20:04) Просмат...   May 18 2013, 20:49
- - Flexz   Тут еще другое интересно - в других процессорах се...   May 17 2013, 19:31
- - ZiB   Спасибо за ответы. Я пока полностью не разобрался....   May 18 2013, 03:04
- - ZiB   Это, то все понятно (что ЦПУ и ПДП делят шину и ес...   May 18 2013, 06:53
- - Golikov A.   может обращение к сторожевому таймеру вынесено в в...   May 18 2013, 08:10
- - vlad_new   Чего тут предполагать, когда АЦП и сторожевик сидя...   May 18 2013, 10:18
- - ZiB   С чего это? Это где такое написано ?   May 18 2013, 11:17
- - Flexz   Раздел System architecture, почти вся периферия, к...   May 18 2013, 16:32
- - ZiB   Назависимый сторожевой таймер, сюдя по описанию од...   May 19 2013, 03:44
|- - jcxz   Работать на бОльшей и много спать.   May 19 2013, 03:49
|- - ZiB   Цитата(jcxz @ May 19 2013, 10:49) Работат...   May 19 2013, 11:17
|- - jcxz   Мне трудно судить про ST, я работаю в основном с N...   May 19 2013, 16:39
- - ZiB   Да, есть 4-е уровня приоритета для ПДП, но у меня ...   May 20 2013, 02:26
|- - jcxz   Цитата(ZiB @ May 20 2013, 08:26) Да, есть...   May 20 2013, 04:37
- - Flexz   В STM-ках приоритет Bus master-ов не контролируетс...   May 20 2013, 06:17
- - vlad_new   Поставте в while несколько __nop(). Дайте DMA немн...   May 20 2013, 13:53
- - ZiB   Дело, в том, что при любом обращении (хоть в цикле...   May 21 2013, 02:58


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

 


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


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