реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> STM32 расчет переменных таймера, алгоритм
Savrik
сообщение Feb 21 2017, 12:45
Сообщение #1


наблюдаю..
***

Группа: Свой
Сообщений: 291
Регистрация: 11-12-06
Из: Украина
Пользователь №: 23 369



Есть программа-конфигуратор, в ней вносят значение частоты(от 0.1Гц до 45кГц) в герцах, программа должна сгенерировать настройки для таймера - делитель PSC и период ARR.
Руками я как-то это считаю, но вот как воплотить это в алгоритме чтото не понимаю, с утра ничего придумать не могу.
Подскажите, где можно посомтреть такой алгоритм? Знаю ,есть различные программы-калькуляторы, но исходников нет на них.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 21 2017, 13:03
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Savrik @ Feb 21 2017, 18:45) *
Подскажите, где можно посомтреть такой алгоритм?

Попробуйте открыть юзер-мануал на разделе "Reset and clock control".
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Feb 21 2017, 14:54
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Я применяю вот такой алгоритм:
Для требуемой выходной частоты (дана частота, которй тактируется таймер вместе с прескалером) вычисляется делитель.
Далее, последовательным увеличением предделителя (перебором "отводов") нажодится то значение, при котором делитель влезает в отведенный ему регистр.
Работает и для хитрых делителей ATMega и для STM32 (16 и 32 бита) и для baud rate генераторов.
Сделано для того, чтобы обеспечить максимально приближённый к требуемому общий делитель.

Сообщение отредактировал Genadi Zawidowski - Feb 21 2017, 17:25
Прикрепленные файлы
Прикрепленный файл  dividers.txt ( 19.62 килобайт ) Кол-во скачиваний: 46
 
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th August 2025 - 18:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01368 секунд с 7
ELECTRONIX ©2004-2016