0

在 32 位微控制器上,我想针对微控制器的不同工作频率测量代码的执行时间。首先我使用了周期性定时器(PIT),但它没有提供高分辨率,因为如果我以高频操作 PIT,那么它的计数器就会溢出。所以我转向系统定时器(STM),因为它可以在系统时钟下运行。但在微控制器的不同工作频率下,STM 给出的代码执行时间相同。你们中的任何人都可以在这件事上帮助我吗?谢谢

4

1 回答 1

0

我意识到这是一个老问题,但如果这不需要在系统中“实时”完成,我只需在进入和退出该功能时切换一个端口引脚并使用示波器来测量时间。我假设您只想为软件测试执行此操作。

如果您需要“实时”执行(在应用程序代码中),那么您需要将您的 STM 定时器值乘以微控制器时钟的period。无论微控制器的时钟频率如何,函数执行的定时器值都应该始终相同(有一些例外)。(即定时器的速度会随着时钟频率的变化而变化,就像你的代码的执行速度会改变一样)

于 2017-03-10T14:47:59.060 回答