189 похожих чатов

Всем привет, вопрос по stm32f407vgt и таймеры, максимум получилось выжать

с таймера скорость срабатывания прерывания 848кгц. Частота плл 168 МГц, как-нибудь можно до 1 МГц дотянуть частоту?

В самом прерывании у меня gpiod->odr ^= pin_12

Неужели больше не получится выжать?

21 ответов

8 просмотров

Должно быть больше. Таймер тактируется правильно, там никаких делителей нет между ним и pll?

а для чего такой кекс? почему не выход с таймера в порт?

Alex Smirnov
Должно быть больше. Таймер тактируется правильно, ...

Вроде нет, брал настройки проекта с куба, и пробовал делать на spl, результат одинаковый

ри-си фрактал джаби чат 𓆏
Вроде нет, брал настройки проекта с куба, и пробов...

Тогда странно. Мб прерывание действительно так долго отрабатывает, тогда попробуйте сделать глобальную переменную и в неё тикать +1 каждое прерывание, и только на каждый 10 тик, например, дергать пин. И измерить частоту, частота прерываний будет в 10 раз выше А если надо просто постоянный ШИМ, то действительно, проще запустить таймер и выходы вывести наружу, и пусть щёлкает себе

Alex Smirnov
Тогда странно. Мб прерывание действительно так дол...

Вы про то, что скорость переключения ноги будет в 10 раз меньше?

ри-си фрактал джаби чат 𓆏
Вы про то, что скорость переключения ноги будет в ...

Про то, что он в прерывании будет не ногу дергать, что мб долго для него, а просто писать в регистр, где эта переменная лежит, и дергать только иногда, если это его ускорит, то и правда быстрее в прерывании дергать не выйдет

Alex Smirnov
Про то, что он в прерывании будет не ногу дергать,...

Хм, тогда остаётся только pwm? Почему тогда он быстрее будет? Там тоже придется дергать ножками же

ри-си фрактал джаби чат 𓆏
Хм, тогда остаётся только pwm? Почему тогда он быс...

прерывание это сигнал сохранние контекста обработка и восстановление тактов 80 займет

ри-си фрактал джаби чат 𓆏
Хм, тогда остаётся только pwm? Почему тогда он быс...

Он в прерывании не делает ничего, его один раз запустил и он дёргает ногами Только выходы таймеров не на каждой ноге есть и не всех таймеров. Так что если уже готовая плата - не факт, что вам повезет)

Alex Smirnov
Он в прерывании не делает ничего, его один раз зап...

У меня stm32f407 discovery плата, на ней тренируюсь

ри-си фрактал джаби чат 𓆏
У меня stm32f407 discovery плата, на ней тренируюс...

Ну вот откройте в кубе конфиг, если на нужной ноге есть какой нибудь выход таймера, то норм

Alex Smirnov
Он в прерывании не делает ничего, его один раз зап...

Так как тогда данные класть? Есть он все время молотит ) и в прерывание не заходит. Фишка же в том, что бы на clk положить данные data и их передать на скорости 1 мегабит , ну и принять. Я по таймерам пока профан, поэтому столько вопросов Поэтому начал с того, что попытался выжать 1 мегабит с ножки.

ри-си фрактал джаби чат 𓆏
Так как тогда данные класть? Есть он все время мол...

Это уже сложнее. Наверное, как то таймер вовремя включать, когда данные готовы и выключать, когда всё отправлено... Ща мб кто то адекватнее подскажет

ри-си фрактал джаби чат 𓆏
Так как тогда данные класть? Есть он все время мол...

скорость gpio максимальную поставили? и можно еще оптимизацию включить

Alex Smirnov
Это уже сложнее. Наверное, как то таймер вовремя в...

Я так и делал, только для маленьких скоростей:)

ри-си фрактал джаби чат 𓆏
Да, gpio speed 100mhz. Оптимизацию кода?

у вас какой код в прерывании? только переключение состояния ноги и все?

Roman
у вас какой код в прерывании? только переключение ...

Проверка, что произошло прерывание tim_it_update. Переключение состояние ноги и очистка бита прерывания. If(tim_getitstatus(tim10, tim_it_update) != reset) { Gpiod->odr ^= pin12; Tim10->sr &= ~ 0x0001; }

ри-си фрактал джаби чат 𓆏
Проверка, что произошло прерывание tim_it_update. ...

Тут надо все быстро делать,в функции чтения отключать всякие проверки,использовать bit banding для записи,а то вот у вас сброс в статус регистре бита-это уже несколько операций

Roman
Тут надо все быстро делать,в функции чтения отключ...

Если убрать даже проверку установки флага, то скорость никак уже не меняется

Похожие вопросы

Обсуждают сегодня

Кстати, а я вот тут подумал. Допустим, у нас имеется цикл который выполняет огромное количество итераций, но мы хотим, чтобы какие-то действия исполнилось только один раз. В Я...
The Bird of Hermes
23
Доброй ночи. Вопрос знатокам. Имеется некая таблица, результат которой выведен в DBGrid на форме. И есть форма, с помощью которой можно как добавить запись, так и отредактиров...
Евгений
28
а всё почему? потому что ассемблер в отличии от яву порождает множество пагубных привычек, среди которых например можно отметить использование глобальных переменных для всего ...
Mixail Frolov
35
анрей С какой целью зашёл?
КТ315
42
я часов 15 назад начал пытаться написать хоть что-то напоминающее ос и у меня есть проблема, которую я пытаюсь решить последние часов 5: есть крч 2 исходника с минимальным код...
Al1to
17
@not_fajox С какой целью зашёл?
КТ315
9
Короче получается только кнопки не поменять А кнопки вроде тоже слетают при редактировании не?
inc.
10
Кто нибудь из участников чата пишет на ассемблере под GNU/Linux?
Spiker01
24
коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
Всем привет ребят! Мб кто-то сталкивался? adminСomponents .get("searchСomponents", use: searchComponents) .openAPI( summary: ...
Admin Adminov
2
Карта сайта