Буфер данных Stm32f103c8

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Нет не ткнет , следить за выходом за границы массива вам самим.
Причем DMA может работать не только с RAM но и с флеш, здесь естественно только чтение.
Реклама
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

[uquote="dosikus",url="/forum/viewtopic.php?p=3434446#p3434446"]Нет не ткнет , следить за выходом за границы массива вам самим.[/uquote]
Хорошо, а по какому параметру DMA определяет, что надо переходит на начало массива, если сам массив ему нужен только как начало? Ведь его не интересует размер массива!
Это параметр number of data? После него начинается новый цикл записи с начала буфера?
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Отделите мух от котлет.

DMA ничего не знает о массивах, структурах и прочего это просто контроллер периферии .
И начните читать .

К примеру Circular mode

После полного завершения тансфера - счетчик транзакций равен нулю, контроллер DMA перезагружает значения из регистров управления в свои внутренние регистры. И начинается заново.

При однократном режиме - все останавливается.
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

Хорошо.

Добавлено after 40 seconds:
Я постараюсь читать вдумчиво
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Спрашивай , скоро придет осознание и все заколосится...

Вот примерный план для изучения DMA .
1 Помигать светодиодом
2 Помигать светодиодом с помощью таймера ( в прерывании)
3 Помигать светодиодом выплевывая массив из флеш в порт через DMA пинаемого таймером
4 Запустить ADC
5 Заполнить массив в RAM значениями ADC с помощью DMA .
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

khch, посмотрите это. http://www.cyberforum.ru/blogs/204791/blog5169.html
http://www.cyberforum.ru/blogs/204791/blog5170.html

Не знаю, поймете что-то или нет.
Реклама
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

[uquote="dosikus",url="/forum/viewtopic.php?p=3434462#p3434462"]
выплевывая массив из флеш в порт через DMA пинаемого таймером
[/uquote]

Возможно ли это со скоростью 2 МГц?
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Вот и испытаешь.
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

Скорость не измеряется в Гц.
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

[uquote="dosikus",url="/forum/viewtopic.php?p=3434592#p3434592"]Вот и испытаешь.[/uquote]

Ок. Потом расскажу.

Добавлено after 1 minute 19 seconds:
[uquote="VladislavS",url="/forum/viewtopic.php?p=3434596#p3434596"]Скорость не измеряется в Гц.[/uquote]
Да, действительно, скорость измеряется в км/ч...
Я постараюсь быть точнее в определениях...
PS надо же как я сразу не заметил этой проблемы...

Добавлено after 45 minutes 25 seconds:
Я тут решил покопаться в дебаггере, понять все. Из знакомых понятий только "копаться" - я же могильщик...
Так вот обьясните пожалуйста, что такое я пометил двумя стрелками. С остальным, вроде как, разбираюсь. Распечатал вот кода асм..
И что подразумевает комментарий в первой строке?

Добавлено after 13 minutes 44 seconds:
хотя нет. Ни хрена не понимаю я кроме команды "загрузить - LDR"
Вложения
555.jpg
(231.12 КБ) 392 скачивания
Друг Кота
Сообщения: 3092
Зарегистрирован: Пн апр 06, 2015 11:01:53
Откуда: москва, уфа

Сообщение arkhnchul »

левая стрелка - адрес команды в памяти, правая - опкод, грубо - представление команды в бинарном виде, как оно и есть там внутри процессора. Комментарий - что будет записано в регистр
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

khch, вы когда-нибудь пробовали 15-20 котят собрать в кучку? они же как ртуть - на вилку не наколешь!
ваши попытки решить сразу взятую задачу напоминают именно этот процесс: вы хватаете одного котенка - пятеро убегают. собираете этих пятерых - первый уже удрал, а еще трое бегут сразу в 4 стороны...
единственный способ справиться с этой задачей - ловить по одному и ФИКСИРОВАТЬ :))) то есть подступать шаг за шагом, не метаясь от заголовочников HAL к ассемблеру, от регистров DMA к скорости SPI... добрые люди вам даже наметили программу изучения - либо следуйте ей, либо откажитесь от этой затеи. ведь иначе, кроме усталости, такая работа ничего не даст - разбегутся котятки...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

ARV
Есть такое... с котятами.
Но это я просто решил так отдохнуть. Поизучаю пока дебаггер - благо и там проблем не мало.
Вот например: Могу ли я в режиме дебага подавать на вход с кнопки сигнал. Ну или прерывание там... Чуть отойду, потом снова на штурм!!!!!
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

[uquote="khch",url="/forum/viewtopic.php?p=3434666#p3434666"]Вот например: Могу ли я в режиме дебага подавать на вход с кнопки сигнал. Ну или прерывание там...[/uquote]

А в чем проблема?
Если речь о ловле события - ставим бряк на обработку события , пускаем дебаггер в RUN .
Одно но , периферия не тормозится дебаггером по дефолту.
Да и многие флаги сбрасываются просто чтением в том числе и считыванием дебаггером...
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

khch писал(а):Я тут решил покопаться в дебаггере, понять все.
Зачем начали копаться в коде загрузчика?
Как в него вообще попали?
khch писал(а):Распечатал вот кода асм
С какой целью? Отлаживать нужно исходный код на Си, а не ассемблерный и тем более не код зашитого при производстве USART загрузчика.
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

Смотрите. Ведь тут же все написано понятно!!! Любой поймет!!! Кроме меня.

Вот к примеру.
In input mode (MODE[1:0]=00):
00: Analog mode
01: Floating input (reset state)
10: Input with pull-up / pull-down
11: Reserved
In output mode (MODE[1:0] > 00):
00: General purpose output push-pull
01: General purpose output Open-drain
10: Alternate function output Push-pull
11: Alternate function output Open-drain
Вот что это все значит??
MODE[1:0]=00
MODE[1:0] > 00
В какой части регистра запихали условие равенства или сравнения!!!!
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

khch писал(а):В какой части регистра запихали условие равенства или сравнения
СпойлерИзображение
GPIO.png
(76.44 КБ) 87 скачиваний
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

[uquote="VladislavS",url="/forum/viewtopic.php?p=3434596#p3434596"]Скорость не измеряется в Гц.[/uquote]
Вот не надо придираться к словам. Формально вы правы, но, например, в англоязычных источниках формулировка clock speed вполне обыденна и измеряется эта speed там в Герцах. Если сделать кальку в русский, что в хайтеке происходит на каждом шагу, то скорость в мегагерцах уже и не является чем-то сильно режущим глаз. Так, издержки перевода.
Встал на лапы
Сообщения: 83
Зарегистрирован: Ср июл 18, 2018 11:51:59

Сообщение khch »

Мурик
Поразительно!!! Вы кинули мне скан именно того места, откуда я скопировал свой вопрос.
Просто я не смог вставить таблицу....
Так где это MODE [1:0] = 00 MODE [1:0] > 00 место???
Я не имею ввиду где это написано - это я сам вижу. Где должно выполняться это условие, чтобы
абсолютно одинаковые комбинации нулей и единиц давали, тем не менее, разный метод работы
пинов: на вход и на выход.
Друг Кота
Аватара пользователя
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Сообщение oleg110592 »

может так понятнее:
Изображение
https://hubstub.ru/stm32/65-stm32-gpio- ... yvoda.html
Ответить

Вернуться в «ARM»