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

 
 
 
Reply to this topicStart new topic
> STM32. DMA, арбитраж и приоритеты.
Danis
сообщение Dec 2 2010, 14:28
Сообщение #1


Twilight Zone
***

Группа: Свой
Сообщений: 454
Регистрация: 17-02-09
Из: Челябинск
Пользователь №: 44 990



Привет, спецы!

Использую DMA в STM32 но еще не разобрался во всех тонкостях.

Вот такая задача у меня.
Имеется STM32 в котором SPI1_Rx посажена на DMA1 канал 2,
SPI2_Tx посажена на DMA1 канал 5. По SPI2_Tx передается некий буфер и его времянка должна выдерживаться точно, т.к. у меня данные SPI2_Tx четко синхронизированы с еще одним неким импульсом, исходящим от таймера 1, поэтому для DMA1 канал 5 я выставил самый высокий приоритет. Через SPI1_Rx я принимаю буфер от внешнего контроллера, который (буфер) иногда «ломается». Верно ли мое предположение, что это может быть связано с приемом SPI1_Rx в тот момент, когда передает SPI2_Tx?

частота SPI1 - 10Mbit. Расстояние между контроллерами 1 см. Осциллограмма для данных и синхронизации - четкая.


--------------------
Magic Friend
Go to the top of the page
 
+Quote Post
ISK2010
сообщение Dec 7 2010, 06:02
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 205
Регистрация: 21-09-10
Из: г.Зеленоград
Пользователь №: 59 631



Ты таймер3 используешь?
Go to the top of the page
 
+Quote Post
Danis
сообщение Dec 8 2010, 05:51
Сообщение #3


Twilight Zone
***

Группа: Свой
Сообщений: 454
Регистрация: 17-02-09
Из: Челябинск
Пользователь №: 44 990



Цитата(ISK2010 @ Dec 7 2010, 09:02) *
Ты таймер3 используешь?

да, он у меня в режиме TIM_OCMode_PWM1 работает.


--------------------
Magic Friend
Go to the top of the page
 
+Quote Post
ISK2010
сообщение Dec 8 2010, 17:05
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 205
Регистрация: 21-09-10
Из: г.Зеленоград
Пользователь №: 59 631



Проверь чтоб точно первый канал третьего таймера на ногу SPI1 MISO ничего не присылал. Для этого настрой ногу SPI1 MISO как gpio input.

Я только предпогаю, у меня похожее было. Первый таймер после инициализации первого канала выходом канала 1N гадил в SPI1 MOSI, причем не всегда, 1 раз из пяти. Вылечил выключением выхода 1N.

Go to the top of the page
 
+Quote Post

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

 


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


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