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

Кстати, а можно ли таймера в master-slave в single shot

запустить на stm32g4 ?

41 ответов

9 просмотров

Емнип смотря какие. Там вроде 1 и 8 всё могут, а остальные так не умеют

Konstantin-Akmarov Автор вопроса
Alex Smirnov
Емнип смотря какие. Там вроде 1 и 8 всё могут, а о...

там много таймеров, которые могут много всего, но именно чтобы фаза не плавала в master-slave в single shot, у меня есть подозрение, что она даже в в single shot плывёт

Konstantin Akmarov
там много таймеров, которые могут много всего, но ...

Так там умеет по событию 1 таймер синхронить остальные же

Konstantin Akmarov
там много таймеров, которые могут много всего, но ...

Да, именно что плывет, на том же h7 осциллом проверял) Если нужно что то, где важна фаза, то это ПЛИС имхо

Konstantin-Akmarov Автор вопроса
Alex Smirnov
Да, именно что плывет, на том же h7 осциллом прове...

Это именно в single shot? Или просто master-slave ?

Konstantin Akmarov
Это именно в single shot? Или просто master-slave ...

Да, именно в single shot. Хотя по идее если просто мастер слейв то то же самое. Более того, в разных таймерах по разному, такое чувство, что у них принципиально разные механизмы тактирования и соответственно задержки

Konstantin-Akmarov Автор вопроса
Alex Smirnov
Да, именно что плывет, на том же h7 осциллом прове...

вот такая печалька получается на g4 😕, TIM2 master, TIM3 slave, частота 710Гц, длина импульса 1.1мкс

Konstantin Akmarov
screenshot вот такая печалька получается на g4 😕, TIM2 master...

А чем вы такой график красивый строите?

Konstantin Akmarov
screenshot вот такая печалька получается на g4 😕, TIM2 master...

Во во, что то такое же на h7 выходило. Только там оно меньше на нормальное распределение походило, был скос в +)) Я бы поставил для такого внешний гун с кмоп выходом, и с цапа g4 им управлял:3

Alex Smirnov
Во во, что то такое же на h7 выходило. Только там ...

А ещё я бы попробовал TIM1 master TIM8 slave, результат может отличаться на порядок, как ни странно

Konstantin-Akmarov Автор вопроса
Alex Smirnov
Во во, что то такое же на h7 выходило. Только там ...

Мне фазы надо крутить туда-сюда, single shot и прочая лабуда, какой уж там гун

Konstantin Akmarov
Мне фазы надо крутить туда-сюда, single shot и про...

А, ну тогда точно плисина. Тоненькая какая нибудь, как раз говин можно заюзать, i2c слейв там, и слать команды в него, какую лабуду ей надо сгенерить

Konstantin-Akmarov Автор вопроса
Alex Smirnov
А, ну тогда точно плисина. Тоненькая какая нибудь,...

Это понятно конечно, ну как обычно - хочется же обойтись одночиповым решением)

Konstantin-Akmarov Автор вопроса
Konstantin Zo
А как вообще измерения фазы проводятся?

Лог анализатором, и да я проверял фазу с обычного генератора - там всё ок

Konstantin Akmarov
Лог анализатором, и да я проверял фазу с обычного ...

У меня не было задач в наносекунды попадать таймером, но если я бы встретился с такой проблемой, то наверное шёл таким путём: 0. Повесил на всяк 50 ом на пинку, чтобы выходное было такое же как у генератора, с которым сравнивалось. Укоротил бы провода. 1. убедился, что таймер в режиме ШИМ сам по себе не даёт джиттера. Если этот даёт, искать тот, который не даёт, либо искал бы проблемы в питании, наводках, разводке, способе тактирования. 2. Если проблема только в slave режиме, то убедился, что таймера тактируются одним источником и искал бы пару таймеров, где эта проблема минимизирована. У STM такое вполне вероятно. Коллеги рассказывали, что проблемы бывают когда просто на другую ножку периферию назначаешь (F429). Про TIM1+TIM8 тут уже советовали. Про тактирование таймеров от HSE тоже. 3. Если то, что выше не дало результата, возможно бы поигрался c частотой шины. Т.к. Event таймера - событие асинхронное и оно синхронизируется с частотой шины. Тут надо глубже ковыряться. Возможно есть такая пара частот AHB/APB с которой проблема минимальна. Если нет, то рассматривал или ПЛИС, или второй мелкий контроллер, специально под эту задачу. Наверняка должны быть мелкие STM8, которые имеют механизм запуска одного таймера другим.

Konstantin-Akmarov Автор вопроса
Konstantin Zo
У меня не было задач в наносекунды попадать таймер...

это всё понятно, работы много, а времени нет особо на это, и вообще не понятно нужно ли мне оно такое просто хотел посмотреть как оно вообще работает.

Konstantin Akmarov
это всё понятно, работы много, а времени нет особо...

а вы что делаете? а то тут на стм управление ллс делать собрались а там на 260кгц над управлять ключиками от нескольких таймеров, что то вот страшно уже

Konstantin-Akmarov Автор вопроса
Andrey Ermakov
а вы что делаете? а то тут на стм управление ллс д...

так у меня получается период 1.4мс, а разброс по фазе ±1мкс - это меньше чем ±0.1% от периода - для всяких двигателей и источников питания вообще пофиг

Konstantin-Akmarov Автор вопроса
Andrey Ermakov
ну deadtime реализуемые они там в 200нан

посчитайте сами, а не просто смотрите на циферки

Konstantin-Akmarov Автор вопроса
Andrey Ermakov
ну deadtime реализуемые они там в 200нан

Дедтайм между силовыми ключами и синхр выпрямителем или внтури полумоста? Если внутри полумоста, он там на железе делается. Не было проблем.

Andrey Ermakov
у синхронного и у раскачки не на железе

В смысле, есть пауза между включением ключа в первичке и включением во вторичке - вот эта пауза может быть программной, хотя я так не делал. Я про то, что у STM32 есть комплиментарные выходы на ключи. И дедтайм там настраивается жётко. Там не тот механизм, что мы обсуждаем.

Konstantin Akmarov
screenshot байпаснул фапч 😐

Жеесть. А это точно не кварц дрожит? Там на MCO вроде вывести можно этот клок.

Konstantin-Akmarov Автор вопроса
Konstantin Zo
Жеесть. А это точно не кварц дрожит? Там на MCO вр...

да, действительно проблема была скорее всего в кварце, проблему воспроизвести не удалось( но фапч тут не при делах

Konstantin Akmarov
да, действительно проблема была скорее всего в ква...

Спасибо, полезно. Хоть понятно, что не в ядре.

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

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

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Заметил в ghci 9.4.8: > :t (<*>) @((->)_) (<*>) @((->)_) :: (w -> (a -> b)) -> (w -> a) -> w -> b Разве не должно (w -> (a -> b)) быть записано как (w -> a -> b)? Это баг, ил...
Михаил
13
Any electron dev here?
Sayanth Tezro
12
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
так это может кто что знает или использует что-то как макбук только не макбук? на 13…14 дюймов
Michael
9
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Карта сайта