МК 1921ВК028 (отладочная плата КФДЛ.441461.024), IDE CodeMaster++ - настройка работы таймеров

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

Ответить
Дмитрий_теплооб
Сообщения: 4
Зарегистрирован: 19 авг 2025, 02:44
Предприятие: АО ПКО Теплообменник

МК 1921ВК028 (отладочная плата КФДЛ.441461.024), IDE CodeMaster++ - настройка работы таймеров

Сообщение Дмитрий_теплооб »

Здравствуйте.

Вопрос про нестабильную работу таймеров. Прикладываю два отладочных проекта - доработанные примеры led_run (там немного черезчур усложнил логику, но это неважно) и pwm.

Почему-то, при одинаковых настройках тактирования, таймера отсчитывают заданные значения счётчиков с разной скоростью. А именно в прошивке "pwm" в два раза быстрее, чем в прошивке "led_run".

Тактирование в обоих примерах настраивается по прерыванию reset при запуске в одних и тех же файлах из SDK - system_K1921VK028.h/c. Вроде как настройка - RCU->APBCFG_bit.DIV = 1; - задаёт делитель 2 для шины с таймерами. От 200 МГц микроконтроллера получаем 100 МГц для таймеров.

Исходя из этого в примере "led_run" таймер с плановой скоростью отсчитывает заданное количество тиков. А вот пример "pwm" - с вдвое более быстрой скоростью. Подскажите пожалуйста почему нестабильно задаются параметры тактирования, таймеров?
Вложения
2025 11 28 - CMCPP pwm - two modes for 200 Hz and 1000 Hz (почему-то интервал по таймеру 2, а не 4 секунды).zip
(192.39 КБ) 55 скачиваний
2025 11 28 - CMCPP led_run - LEDs, buttons, timers (интервал по таймерам плановые 5 секунд).zip
(303.65 КБ) 40 скачиваний
Ответить

Вернуться в «32-разрядные микроконтроллеры»