Например TDA7294

Форум РадиоКот • Просмотр темы - GPIO+DMA stm32f429
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт мар 28, 2024 12:33:59

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 24 ]  1,  
Автор Сообщение
Не в сети
 Заголовок сообщения: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 20:49:47 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Всем привет! Столкнулся с задачей скоростного считывания ног порта. Завёл всё через DMA, копируют по одному младшему байта в массив с инкрементом. Проц работает на заявленной максимуме (180 МГц).
Но, вот беда, получилось только раскачать на 50 МГц, хотя в даташите пишут, что можно до 90 считывать.
Подскажите, можно ли настройками поднять скорость считывания я повыше?
Или же придётся камень менять?
Добавлю, что раскачал в режиме оверклока до 240 МГц, скорость считывания поднялась примерно до 66.
Заранее спасибо!

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 21:06:55 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
С GPIO меньше 4 тактов не получишь, быстрее только через DCMI, побайтно можно за 2 такта забирать, больше - за 3.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 22:02:45 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Но 2 такта - это 45 МГц, а я несколько раз проверял - ровно 50 получается. Может, это ограничение GPIO?
UPD: 4 такта

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Последний раз редактировалось allplayer Пт янв 26, 2018 22:47:42, всего редактировалось 1 раз.

Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 22:19:43 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Хм, на всякий случай проверил на F429 и неожиданно получил 3 такта, хотя для F407 тот же код дает 4. Это странно, ведь у них даже RM один...


Вернуться наверх
 
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 23:19:21 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Хм, на всякий случай проверил на F429 и неожиданно получил 3 такта, хотя для F407 тот же код дает 4. Это странно, ведь у них даже RM один...

3 такта на DMA+GPIO?
Или же с DCMI?

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Пт янв 26, 2018 23:24:30 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
3 такта на DMA+GPIO?
Или же с DCMI?

DMA+GPIO.

ps. Это если после запуска DMA мк усыплять командой __WFI(), иначе будет 4 такта, а на F407 было 4 и с WFI.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 07:22:26 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
На сайте производителя написано:
Цитата:
Up to 164 fast I/Os up to 90 MHz

До 164 быстрых ИОшек со скоростью до 90 МГц.
Что производитель имеет ввиду? В каком режиме получить 90 МГц?

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 10:05:40 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
До 164 быстрых ИОшек со скоростью до 90 МГц.
Что производитель имеет ввиду? В каком режиме получить 90 МГц?

Можешь на ассме написать, выводишь константы сохраненные в регистрах в порт, тогда по идее должно быть 2 такта, а если из массива выводить, то уже 4.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 10:13:39 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Мне бы хотелось получить чтение порта (8 бит) со скоростью 90 мегасемплов (2 такта), вывести в оверклок и поднять считывание до 100 мегасемплов. Но это получится провернуть только для записи в одну переменную. Если мне нужно пихать в массив, то придется инкрементировать адрес (еще +2 такта=4), я всё правильно понял?

А если запараллелить 2 порта, получится ли настроить GPIO и DMA так, чтобы сдвиг между считыванием данных был 2 такта и я смог каждый четный байт массива записывать из порта GPIOA, а каждый нечетный с порта GPIOB, например?

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 10:25:53 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Мне бы хотелось получить чтение порта (8 бит) со скоростью 90 мегасемплов (2 такта), вывести в оверклок и поднять считывание до 100 мегасемплов. Но это получится провернуть только для записи в одну переменную. Если мне нужно пихать в массив, то придется инкрементировать адрес (еще +2 такта=4), я всё правильно понял?

Инкремент адреса - это мелочи, главное каждое значение прочитанное в регистр придется сохранять еще и в памяти.

Цитата:
А если запараллелить 2 порта, получится ли настроить GPIO и DMA так, чтобы сдвиг между считыванием данных был 2 такта и я смог каждый четный байт массива записывать из порта GPIOA, а каждый нечетный с порта GPIOB, например?

Нет. И зачем вообще такое делать, если порты 16-ти битные и можно обойтись одним? Читай за 3 такта 16 бит, даже в таком случае можно получить 100 MSPS если разогнать мк до 300 MHz, а у меня он на них работает. По крайней мере 90 MSPS ты таким образом получишь точно. Если достаточно 8 бит, то бери DCMI...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 10:38:26 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Мне бы хотелось получить чтение порта (8 бит) со скоростью 90 мегасемплов (2 такта), вывести в оверклок и поднять считывание до 100 мегасемплов. Но это получится провернуть только для записи в одну переменную. Если мне нужно пихать в массив, то придется инкрементировать адрес (еще +2 такта=4), я всё правильно понял?

Инкремент адреса - это мелочи, главное каждое значение прочитанное в регистр придется сохранять еще и в памяти.

Цитата:
А если запараллелить 2 порта, получится ли настроить GPIO и DMA так, чтобы сдвиг между считыванием данных был 2 такта и я смог каждый четный байт массива записывать из порта GPIOA, а каждый нечетный с порта GPIOB, например?

Нет. И зачем вообще такое делать, если порты 16-ти битные и можно обойтись одним? Читай за 3 такта 16 бит, даже в таком случае можно получить 100 MSPS если разогнать мк до 300 MHz, а у меня он на них работает. По крайней мере 90 MSPS ты таким образом получишь точно. Если достаточно 8 бит, то бери DCMI...


Я уже читаю инфу по DCMI. Подтолкните, пожалуйста, с чего лучше начать?
Я так понимаю, что в режиме DCMI мне придется подцепить и внешнее тактирование?

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 10:54:28 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Я уже читаю инфу по DCMI. Подтолкните, пожалуйста, с чего лучше начать?
Я так понимаю, что в режиме DCMI мне придется подцепить и внешнее тактирование?

DCMI очень простой, там всего один CR для настройки и, насколько я помню, для 8 бит в нем достаточно только бит разрешения захвата включить. 90 MHz придется самому генерить, потом еще для старта нужно короткий импульс на вход VSYNC подать. И усыплять мк тоже придется, на таких скоростях любая активность добавляет тормоза.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Сб янв 27, 2018 23:07:29 
Сверлит текстолит когтями

Карма: -10
Рейтинг сообщений: 93
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1145
Рейтинг сообщения: 0
Если мне нужно пихать в массив, то придется инкрементировать адрес (еще +2 такта=4), я всё правильно понял?

Программно не получится: нужна как минимум одна инструкция чтения памяти (GPIO) - это два такта, и одна - записи в ОЗУ - ещё 2 такта. Даже с многословными инструкциями - никак.

А если запараллелить 2 порта, получится ли настроить GPIO и DMA так, чтобы сдвиг между считыванием данных был 2 такта и я смог каждый четный байт массива записывать из порта GPIOA, а каждый нечетный с порта GPIOB, например?

Можно попробовать. Только зачем разные порты если оба DMA-канала можно натравить на один GPIO?
Генерить сигналы событий к DMA от таймеров со сдвигом 2 такта.
Хотя всё это ненадёжно очень.
Лучше взять LPC43xx - у него есть порт SGPIO, он штатно работает на частоте до 204МГц. Без всяких оверклоков.
И при этом у SGPIO имеется FIFO. И до 16 входных линий.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 09:21:42 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Я перечитал на форуме много сообщений на тему самодельных осциллографов на базе stm32f4, где используют 100 МГц-й АЦП, успешно с него считывают, при этом успевая еще и на экран графики вывести. Но, вот беда, не смог я увидеть, каким образом идет считывание. И генерации на 100 МГц я нигде не увидел :dont_know:

Кстати, да: Прикупил генератор на 50 МГц (больше просто не было в наличии). И при тактировании в 150 МГц получил как раз 50М измерений в секунду через DCMI без режимов спячки.
В принципе, если проц не помрёт от оверклока 180->300 МГц, то и нормально будет :)))

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 10:39:07 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Кстати, да: Прикупил генератор на 50 МГц (больше просто не было в наличии). И при тактировании в 150 МГц получил как раз 50М измерений в секунду через DCMI без режимов спячки.
В принципе, если проц не помрёт от оверклока 180->300 МГц, то и нормально будет :)))

Мк усыпляют еще и чтобы от помех избавиться, да и что ты будешь делать непосредственно во время оцифровки?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 11:13:24 
Грызет канифоль
Аватар пользователя

Карма: 6
Рейтинг сообщений: 202
Зарегистрирован: Пт ноя 13, 2009 10:39:32
Сообщений: 272
Откуда: Москва
Рейтинг сообщения: 0
STM32F446 разогнан до 240 мГц.
DCMI через DMA работает до 120мГц стабильно.
Клок для АЦП Port A8 OUT MCO.
На 60 мГц и ниже тактирование по таймеру.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 11:21:04 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Клок для АЦП Port A8 OUT MCO.
На 60 мГц и ниже тактирование по таймеру.

А для чего MCO, если таймер и так может F/2 выдавать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 11:45:12 
Грызет канифоль
Аватар пользователя

Карма: 6
Рейтинг сообщений: 202
Зарегистрирован: Пт ноя 13, 2009 10:39:32
Сообщений: 272
Откуда: Москва
Рейтинг сообщения: 0
Reflector:
На таймере сразу не получилось. Макс. 60 мГц при Prescaler = 0 и Period = 1 (TIM1)
Не стал дальше копать и подключил MCO.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 12:44:58 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
На таймере сразу не получилось. Макс. 60 мГц при Prescaler = 0 и Period = 1 (TIM1)
Не стал дальше копать и подключил MCO.

У меня генераторы сконфигурированы как ШИМы, но, естественно, так можно генерить и меандр. Для F/2 нужны ARR и CCR равные 1/1, для F/4 - 3/2 и т.д.... А если таймер настроить в режиме инверсии, тогда минимальная частота уже действительно будет F/4. Естественно нужно выбирать быстрые таймеры сидящие на APB2 или для APB1 ставить делитель 2, хотя практика показывает можно спокойно везде ставить 1 :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: GPIO+DMA stm32f429
СообщениеДобавлено: Вс янв 28, 2018 14:52:24 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вс апр 24, 2011 20:12:21
Сообщений: 72
Рейтинг сообщения: 0
Кстати, да: Прикупил генератор на 50 МГц (больше просто не было в наличии). И при тактировании в 150 МГц получил как раз 50М измерений в секунду через DCMI без режимов спячки.
В принципе, если проц не помрёт от оверклока 180->300 МГц, то и нормально будет :)))

Мк усыпляют еще и чтобы от помех избавиться, да и что ты будешь делать непосредственно во время оцифровки?


Разве могут быть помехи, если у меня внешний АЦП продавливает ноги порта?

Добавлено after 17 minutes 16 seconds:
Кстати, да: Прикупил генератор на 50 МГц (больше просто не было в наличии). И при тактировании в 150 МГц получил как раз 50М измерений в секунду через DCMI без режимов спячки.
В принципе, если проц не помрёт от оверклока 180->300 МГц, то и нормально будет :)))

Мк усыпляют еще и чтобы от помех избавиться, да и что ты будешь делать непосредственно во время оцифровки?


Мне надо начать оцифровку и подать 2 независимых импульса (дернуть друг за другом 2 ноги) длительностью 100нс. А потом можно и поспать :hunger:

_________________
Купил лазерный принтер... Теперь осталось спаять машину времени и прислать себе принтер пораньше =D


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y