求高人解释STM32普通定时器的问题 10
初学STM32在定时器这块卡了很长时间不知所措,问题如下:在使用普通定时器时有如下部分配置语句;TIM_TimeBaseStructure.TIM_Period=1000...
初学STM32在定时器这块卡了很长时间不知所措,问题如下:
在使用普通定时器时有如下部分配置语句;
TIM_TimeBaseStructure.TIM_Period=10000-1;
TIM_TimeBaseStructure.TIM_Prescaler= 36000;
/* 时钟预分频值 例如:时钟频率=72MHZ/(时钟预分频+1) */
TIM_TimeBaseStructure.TIM_ClockDivision=0;
这句TIM_TimeBaseStructure.TIM_Prescaler= 36000;是时钟分频。是把TIM已经得到的时钟频率进行再分频吗???分频后给了哪个寄存器?
那个时钟频率计算公式中的72MHZ是从哪里得来???
照说72MHZ是从APB1的倍频器倍频后再经APB的预分频器分频得来,那这些语句怎嘛在所有我查阅过的的程序中都没有就直接是72MHZ???
这句TIM_TimeBaseStructure.TIM_ClockDivision=0;是神马意思真不懂
在这里纠结几天了,跪求高人帮忙解释解释!不胜感激!!! 展开
在使用普通定时器时有如下部分配置语句;
TIM_TimeBaseStructure.TIM_Period=10000-1;
TIM_TimeBaseStructure.TIM_Prescaler= 36000;
/* 时钟预分频值 例如:时钟频率=72MHZ/(时钟预分频+1) */
TIM_TimeBaseStructure.TIM_ClockDivision=0;
这句TIM_TimeBaseStructure.TIM_Prescaler= 36000;是时钟分频。是把TIM已经得到的时钟频率进行再分频吗???分频后给了哪个寄存器?
那个时钟频率计算公式中的72MHZ是从哪里得来???
照说72MHZ是从APB1的倍频器倍频后再经APB的预分频器分频得来,那这些语句怎嘛在所有我查阅过的的程序中都没有就直接是72MHZ???
这句TIM_TimeBaseStructure.TIM_ClockDivision=0;是神马意思真不懂
在这里纠结几天了,跪求高人帮忙解释解释!不胜感激!!! 展开
展开全部
systemInit()函数,是APB1达到了36M,定时器还有一个倍频设置乘2,所以就达到了72M,只要用了上面的函数,就是72M
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在system_stm32f10x.c文件看看程序systemInit()函数,是不是配置系统时钟为72MHz了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询