stm32f4 cmsis ADC -DMA
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
UART не управляет регистром NDTR. В этом регистре ПОСЛЕ завершения пакета оказывается дополнение количества транзакций для определения длины пакета. И собственно не UART управляет ДМА, а один из двух сигналов, управляющих самим УАРТом. Подобный функционал есть только у той периферии, которая формирует информационные потоки и имеет в своем функционале сигналы управления этими потоками.
Таймер - это просто таймер.
Непонятно что вы хотите получить.
Таймер - это просто таймер.
Непонятно что вы хотите получить.
- Реклама
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
. И собственно не UART управляет ДМА, а один из двух сигналов,что за сигналы? Какой регистр формирует?
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
У меня такое ощущение, что вы референс-мануал не читаете. Открываете UART в разделе Hardware flow control и обнаруживаете там две диаграммы для управления сигналами RTS/CTS. Аналогичные режимы вы можете обнаружить в модуле SDIO.
Вы цель свою можете обозначить? Какое ко всему этому имеет отношение ШИМ?
Вы цель свою можете обозначить? Какое ко всему этому имеет отношение ШИМ?
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
К этому не имеет.Значит я что то упустил.
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
Ну вам виднее... Таймер кроме собственного периода и дьюти-цикла ничего не имеет. С какой стати он сможет прерывать пакет транзакций следующих в его же регистры? Чем он это будет делать?
- Реклама
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
вы давно работаете с stm32?
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
С перерывами лет 5. Сейчас делаю проект на F407. Как раз с с DMA-ADC.
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
не удаётся управлять шимом через ацп в дма .Хотя в серии f1 у меня всё вышло.Там переферия- переферия поддерживает.В f4 я не нашёл такого описания что использовать ещё один поток?
Добавлено after 32 seconds:
Кто подскажет?
Добавлено after 32 seconds:
Кто подскажет?
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
Еще один поток - значит сначала из ADC в память (один поток), а потом из памяти в CCP (второй поток).
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
мне получается нужно создавать буфер.А как прописывать адрес в памяти?
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
Вообще то просто объявляете переменную необходимой разрядности:
Код: Выделить всё
uint16_t bufferADC;
...
DMA2_Stream0->M0AR = (uint32_t)&bufferADC;
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
тогда как включить несколько каналов Ацп?
Добавлено after 41 second:
допустим мне нужно 5 каналов.
Добавлено after 41 second:
допустим мне нужно 5 каналов.
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
Какое отношение 5 каналов АЦП имеют к ДМА? Вы желаете каждый канал пихать в свой буфер? Если речь идет об ОДНОМ АЦП с мультиплексором на 5 каналов, то есть режим сканирования. Что Вам конкретно нужно?
-
ivan dimir
- Мучитель микросхем
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Re: stm32f4 cmsis ADC -DMA
Можно через дма 5 каналов сканировать можно без?
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
У вас странное построение фраз... В русском языке многое можно делать произвольно. Но не до такой степени...
Обозначайте КОНЕЧНУЮ цель, а не свои промежуточные идеи на пути к цели.
ДМА с АЦП использовать совсем не обязательно. У одного потока ДМА может быть максимум два буфера в ОЗУ. Можно раскидать один и тот же источник по разным потокам, но придется сложными цепочками обеспечивать эти потоки доступными каналами (реквестами).
Если речь идет о пяти каналах управления ШИМами от входных напряжений, то автоматической схемы через ДМА получить не выйдет.
Обозначайте КОНЕЧНУЮ цель, а не свои промежуточные идеи на пути к цели.
ДМА с АЦП использовать совсем не обязательно. У одного потока ДМА может быть максимум два буфера в ОЗУ. Можно раскидать один и тот же источник по разным потокам, но придется сложными цепочками обеспечивать эти потоки доступными каналами (реквестами).
Если речь идет о пяти каналах управления ШИМами от входных напряжений, то автоматической схемы через ДМА получить не выйдет.
- КРАМ
- Друг Кота
- Сообщения: 25264
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: stm32f4 cmsis ADC -DMA
Пожалуй можно попробовать в автоматическом режиме. 5 каналов писать в буфер из 5 слов с автоматическим сканированием, а каждое из этих слов назначить источником для 5 каналов ШИМа. Для этого потребуется минимум 2 таймера. Один с 4 ШИМами и еще один с одним (или двумя, как выйдет). На это уйдет 6 потоков ДМА.


