本帖最后由 奔牛滚滚 于 2012-4-5 07:42 编辑
按照我的理解,只要设置单脉冲标志位应该就可以了.但是发现这样不行.
代码如下:- TIM1_OC1PreloadConfig(ENABLE);//使能预装载
- TIM1_OC1Init(TIM1_OCMODE_PWM1 ,TIM1_OUTPUTSTATE_ENABLE , \
- TIM1_OUTPUTNSTATE_DISABLE,5, \
- TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_LOW, \
- TIM1_OCIDLESTATE_RESET,TIM1_OCNIDLESTATE_RESET);
- ......
- TIM1_UpdateDisableConfig(ENABLE);//允许产生更新事件
- TIM1_SelectOnePulseMode(TIM1_OPMODE_SINGLE);//单脉冲模式
- // TIM1_Cmd(DISABLE);
- while(!TIM1_GetFlagStatus(TIM1_FLAG_UPDATE));//等待PWM波完成
- TIM1_ClearFlag(TIM1_FLAG_UPDATE);//清除溢出标志.
|