最近做项目,看多代码有些地方又有些迷糊了,希望高手给解答一下。
例如:TIM1是从模式,TIM2是主模式。
根据TIM_SelectInputTrigger(TIM2, TIM_TS_TI1F_ED)设置,又有下图
TIM2起的作用是:当捕获到霍尔传感器的异或值有变化时,就触发TIM2的中断。TIM2的CCR1用来存储捕获
发生时TIM2_CNT的值,然后CCR1清零。主定时器再去触发从定时器中断,从而实现换相。在这个过程中我有
三点不明白,希望高手给指点一下,在这里谢谢了。
1、主定时器是如何去触发从定时器中断(COM事件)的,在何时去触发的?
2、 TIM_SelectSlaveMode(主定时器还是从定时器?, TIM_SlaveMode_Reset),红 {MOD}字体部分是应该
写成TIM2(主定时器)还是TIM1(从定时器),有此疑问是因为两种写法的都有,怎么理解呢?
3、 TIM_TimeBaseStructure.TIM_Prescaler = 71;
TIM_TimeBaseStructure.TIM_Period =50000;
TIM_OCInitStructure.TIM_Pulse =1023; 看到很多人在主定时器配置中都有这句,不理解是怎么来的?
希望明白的人能给指点一二,谢谢...
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
看看我在6楼的回复,你是怎么理解的呢?
---------------------------------
看看我在6楼的回复,大家一起交流一下。
---------------------------------
恩,我也觉得只有这么理解才能在原理上说的通。有没有高手能给个确定的答案。
---------------------------------
我的定时器设置代码和你这一样,可是定时器2就是触发不了定时器1进入中断完成换相,所以我也只能在定时器2的中断里完成换相,不知你调试时有没有遇到这种情况,是什么原因呢?
---------------------------------
单方面这么说我也不知道具体是什么原因。这跟你的硬件电路,电机编码器,程序逻辑都有关系。你可以用
示波器观察一下波形。看看定时器2的输出是什么样的,根据现象再来确定原因究竟在什么地方。
一周热门 更多>