0

На 32-битном микроконтроллере я хочу измерить время выхода кода для разных рабочих частот микроконтроллера. Прежде всего, я использовал периодический таймер (PIT), но он не обеспечивал высокое разрешение, потому что, если я работаю с PIT на высокой частоте, то его счетчик переполняется. Поэтому я переключился на системный таймер (STM), потому что он может работать на системных часах. но на разных рабочих частотах микроконтроллера STM дает такое же время выполнения кода. Может ли кто-нибудь из вас помочь мне в этом вопросе. СпасибоВремя выполнения кода на микроконтроллере

+0

«То же самое время выполнения» означает, что значение счетчика таймера системы подсчитывало одинаковое количество тиков? Вы забыли разделить значение счетчика на скорость тика, чтобы преобразовать во времени? – kkrambo

+0

Да, я имею в виду «время выполнения», значение счетчика системного таймера подсчитывает одинаковое количество тиков. На разных рабочих частотах значение счетчика таймера одинаково. Да, я не разделил значение счетчика. Не могли бы вы рассказать подробнее. – waq

+0

Когда вы меняете рабочую частоту, вы также не изменяете скорость тика системного таймера? Таким образом, _n_ тики по первоначальной скорости тика - это другое количество времени, чем _n_ тики при изменении скорости тика. Ваш счетчик подсчитал одинаковое количество тиков, но это другое время, не так ли? – kkrambo

ответ

0

Я понимаю, что это старый вопрос, но если это не нужно делать в системе «в реальном времени», я бы просто переключил вывод порта при входе и выходе из функции и использовал осциллограф для измерения время. Я предполагаю, что вы просто хотите сделать это для тестирования программного обеспечения.

Если вам нужно сделать, это «в реальное время» (в коде приложения), то вам нужно умножить ваше значение таймера STM микроконтроллера для часов периода. Значение таймера для выполнения функции всегда должно быть одинаковым (за некоторыми исключениями) независимо от тактовой частоты микрофона. (то есть скорость таймера будет изменяться с тактовой частотой так же, как скорость выполнения вашего кода изменится)

Смежные вопросы