如图:黄 {MOD}=CH1,紫 {MOD}=CH1N 现在我要做的是在更新中断里 通过反馈电压ADC去调节 CH1的波形 也就是打开或者关闭 但是现在的问题是:在我开关CH1时 CH1N会出现不正常的情况 可以看到紫的的CH1N会有一个尖峰脉冲多余的
代码如下:
void TIM1_UP_IRQHandler(void)
{
if ( (TIM1->SR & TIM_IT_Update) && (TIM1->DIER & TIM_IT_Update) )
{
switch ( MachineControl.StartFinshFlag )
{
case 1:
PidAdjust.FeedBackCurr =
(ADC_ConvertedValue[0][1] + ADC_ConvertedValue[1][1] +
ADC_ConvertedValue[2][1] + ADC_ConvertedValue[3][1] +
ADC_ConvertedValue[4][1] + ADC_ConvertedValue[5][1] ) / 6 ;
if ( PidAdjust.FeedBackCurr > 400 ) ///<ADC调节
{
TIM1->CCER &= (u16)0xFFFE ;///<关闭CH1的输出状态
}
else
{
TIM1->CCER |= (u16)0x0001 ;///<打开CH1的输出状态
}
break;
}
TIM1->SR = (u16)~TIM_IT_Update;
}
}
恳求各位支援 谢谢了!!!
一周热门 更多>