本帖最后由 Gene 于 2016-12-13 17:14 编辑
在阅读“第十五章 驶入捕获实验”的过程中,有3个疑问,想请教一下大家:
1.初始化函数82行:GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
既然是输入捕获,GPIO为什么配置成输出?不是应该配置为输入吗?
2.中断服务函数中147行:“TIM_OC1PolarityConfig(TIM5,TIM_ICPolarity_Rising); //CC1P=0 设置为上升沿捕获”
我查看固件手册以及“stm32f4xx_tim.h”中关于函数的说明,第二个形参“TIM_OCPolarity”只有2个可选值(见下面),
* @param TIM_OCPolarity: specifies the OC1 Polarity
* This parameter can be one of the following values:
* @arg TIM_OCPolarity_High: Output Compare active high
* @arg TIM_OCPolarity_Low: Output Compare active low
但是例程中有TIM_OCPolarity却取值“TIM_ICPolarity_Rising”,那请问关于库函数TIM_OC1PolarityConfig的定义,哪里有更详细的说明?
3.中断服务函数中150~156行:
TIM5CH1_CAPTURE_STA=0; //清空
TIM5CH1_CAPTURE_VAL=0;
TIM5CH1_CAPTURE_STA|=0X40; //标记捕获到了上升沿
TIM_Cmd(TIM5,DISABLE ); //关闭定时器5
TIM_SetCounter(TIM5,0);
TIM_OC1PolarityConfig(TIM5,TIM_ICPolarity_Falling); //CC1P=1 设置为下降沿捕获
TIM_Cmd(TIM5,ENABLE ); //使能定时器5
这里为什么要关闭定时器?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>