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

 
 
> STM32F051 DMA на GPIO со стробом
sherr
сообщение Feb 10 2016, 06:06
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 257
Регистрация: 10-06-06
Из: Ставрополь
Пользователь №: 17 955



Дано : STM32F051 48 mhz + RGB светодиодная матрица от светодидного экрана.
Надо раз в 50-400 мкс задвигать 64 байта данных(точнее 64 х6 бит) в сдвиговые регистры.
Можно ли при передаче по DMA после выставления на порту каждого нового байта формировать
импульс CLK(80-100 нс достаточно), или прийдется вешать внешнюю логику ?
ps : Ногодрыг хотелось бы оставить на крайний случай - контроллеру и так будет чем заняться ...

Сообщение отредактировал sherr - Feb 10 2016, 06:09
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Feb 10 2016, 07:32
Сообщение #2


Гуру
******

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



Цитата(sherr @ Feb 10 2016, 08:06) *
Надо раз в 50-400 мкс задвигать 64 байта данных(точнее 64 х6 бит) в сдвиговые регистры.
Можно ли при передаче по DMA после выставления на порту каждого нового байта формировать
импульс CLK(80-100 нс достаточно), или прийдется вешать внешнюю логику ?
Да, задача не очень понятна. Если я ее правильно понял, то я бы просто завел массив на 64*2 байтов, и этот массив при помощи DMA выпихивал в порт по таймеру. В каждом байте 6 бит под данные, 1 бит под CLK. Желательно, чтобы все сигналы были на одном порту, иначе придется задействовать по одному массиву и каналу DMA на каждый порт. Делал так, выводил одновременно на три порта 16 вообще не связанных между собой последовательных сигналов.


--------------------
На любой вопрос даю любой ответ
"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
Огурцов
сообщение Feb 10 2016, 15:53
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(Сергей Борщ @ Feb 10 2016, 07:32) *
В каждом байте 6 бит под данные, 1 бит под CLK

а есть какой-нибудь хак, чтобы пересылка из памяти в порт была строго определена по тактам ? чтобы картинка по экрану не плыла
Go to the top of the page
 
+Quote Post



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

 


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


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