初级会员

- 积分
- 75
- 金钱
- 75
- 注册时间
- 2014-4-24
- 在线时间
- 0 小时
|
发表于 2014-7-22 16:19:31
|
显示全部楼层
回复【6楼】正点原子:
---------------------------------
原子哥,我用TIM2_CC2触发ADC1是可行的,在原程序的基础上改成TIM1_CC2触发就不行了,程序一直停在判断AD转换是否结束,下面是改过的定时器配置,请原子哥帮忙看一下问题出在哪里了,谢谢!
void TIM1_Configuration(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_OCInitTypeDef TIM_OCInitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);
TIM_TimeBaseStructure.TIM_Period = 7199;
TIM_TimeBaseStructure.TIM_Prescaler = 999;
TIM_TimeBaseStructure.TIM_ClockDivision = 0x0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM1,&TIM_TimeBaseStructure);
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = 400;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OC2Init(TIM1, & TIM_OCInitStructure);
TIM_ARRPreloadConfig(TIM1,ENABLE);
TIM_Cmd(TIM1, ENABLE);
TIM_InternalClockConfig(TIM1);
TIM_OC2PreloadConfig(TIM1, TIM_OCPreload_Enable);
TIM_UpdateDisableConfig(TIM1, DISABLE);
}
AD转换触发方式选择的是TIM1_CC2触发:ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T1_CC2; |
|