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

 
 
 
Reply to this topicStart new topic
> управление TIM3 по DMA (STM32F101)
Tanker
сообщение Dec 7 2009, 11:49
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 30-06-07
Пользователь №: 28 806



Здравствуйте!

Хочу в основном цикле программы вычислять значения для TIM3_CH1, TIM3_CH2, TIM3_CH3 и чтобы DMA переносил вычесленные значения в эти самые TIM3_CHх.
Прочитал апнот 2548 согласно которому TIM3_CH2 обделён каналом DMA, и вообще на каждый TIM3_CHx придётся использовать свой канал DMA , хотя логичней было бы использовать один DMA так как регистры TIM3_CHx расположены последовательно.

Хочу узнать Ваши рекомендации относительно задачи.

Сообщение отредактировал Tanker - Dec 7 2009, 11:50
Go to the top of the page
 
+Quote Post
msalov
сообщение Dec 7 2009, 14:57
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Вам нужно использовать Memory-to-Memory mode. Он не зависит от другихмодулей, а просто копирует область памяти в другую область памяти.
Go to the top of the page
 
+Quote Post
koyodza
сообщение Dec 11 2009, 14:43
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 213
Регистрация: 28-02-07
Из: Киев
Пользователь №: 25 744



Цитата(Tanker @ Dec 7 2009, 13:49) *
Прочитал апнот 2548 согласно которому TIM3_CH2 обделён каналом DMA, и вообще на каждый TIM3_CHx придётся использовать свой канал DMA , хотя логичней было бы использовать один DMA так как регистры TIM3_CHx расположены последовательно.

Так то, что каналы DMA закреплены за периферией, означает не то, что только этот канал DMA работает с этим каналом таймера или уарта, а то, что эта периферия может быть инициатором обмена DMA.
Иными словами, выбираете источник DMA один из каналов своего таймера (или, скорее, TIM3_UP, т.е. DMA CH3), тогда по этому событию будет инициирован обмен. В качестве источника настраиваете память, в качестве приемника - регистры таймера, ну и длину данных устанавливаете соответственно.
В принципе, никто не запрещает вообще обмен инициировать одной периферией, а данные бросать в другую
Go to the top of the page
 
+Quote Post

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

 


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


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