没有合适的资源?快使用搜索试试~ 我知道了~
STM32F103R8T6_计算代码运行时间
3星 · 超过75%的资源 需积分: 48 80 下载量 135 浏览量
2015-06-27
11:25:50
上传
评论 3
收藏 221KB PDF 举报
温馨提示
试读
1页
STM32F103R8T6_计算一段代码的运行时间——采用定时器的方法(配置)
资源推荐
资源详情
资源评论
STM32F103 一段代码执行时间计算方法。——通过定时器的方法
思路:打开定时器 TIMx,其中 TIMx—CNT 初始值设置为 0,运行一段代码的,关闭定
时器,(设置断点)读取关闭定时器后的 TIMx—CNT 计数器的值。此时的值乘以 CNT 的反转
周期就是以上代码的运行时间。具体设置如下:
int main(void)
{
#ifdef DEBUG
debug();
#endif
TIM2 -> CNT=0x00; //定时器计数初始值设置 0;
TIM_Cmd(TIM2, ENABLE); //开启定时器;
for(u8 i=0;i<0x2D;i++) //给数组 DDK[45]赋值;(执行的一段代码)
{
DDK[i]=i;
}
TIM_Cmd(TIM2, DISABLE); //关闭定时器;
Delay(us); //设置断点之处
}
Time2 配置
void Config_TIM2(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_DeInit(TIM2); //系统时钟 48MHz
TIM_TimeBaseStructure.TIM_Prescaler = 49; // 48M/(49+1) = 1000kHz 即 1us,CNT 计数一次
TIM_TimeBaseStructure.TIM_Period = 60000; // 60000/100k = (600 ms-->10Hz)600ms 进入一次中断。
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //CNT 向上计数方式
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);
TIM_ClearFlag(TIM2, TIM_FLAG_Update);
TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);
}
资源评论
- leoliusht2017-11-15很一般 不值得这么多金币
- titan_ch2021-02-25确实很一般,而且不全
wuyi0151
- 粉丝: 1
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功