-
HC32F030如何实现不用中断更新CCR调节互补PWM占空比?
因为要使用互补PWM控制H桥来驱动电机,参考HC32F030驱动下的产生互补PWM的例子“HC32F030_DDL_Rev1.2.0\example\timer3\timer3_m23_tpcmp_pwm”,可以产生控制互补PWM占空比控制电机转动。但问题是这种方式需要在定时器溢出中断频繁更新CCR的值,频繁的中断服务程序频繁占用系统处理时间,而我只需要输出互补PWM而已。尝试在参考例子中关掉中断,使能PWM自动输出。//stcTim3BaseCfg.pfnTim3Cb=Tim3_LRMotorPWM_Int;//中断函数入口//Tim3_ClearAllIntFlag();//清中断标志//Tim3_Mode23_EnableIrq(Tim3UevIrq);//使能TIM3UEV更新中断//EnableNvic(TIM3_IRQn,IrqLevel0,TRUE);//TIM3中断使能Tim3_M23_EnPWM_Output(TRUE,TRUE);//端口输出使能应用程序中改变CCR的值,试图改变PWM占空比:Init_LRMotor_PWM();Tim3_M23_CCR_Set(Tim3CCR0A,250);Tim3_M23_CCR_Set(Tim3CCR0B,750);Tim3_M23_CCR_Set(Tim3CCR1A,250);Tim3_M23_CCR_Set(Tim3CCR1B,750);Tim3_M23_Run();Delay_MS(2000);Tim3_M23_Stop();Delay_MS(2000);Tim3_M23_CCR_Set(Tim3CCR0A,750);Tim3_M23_CCR_Set(Tim3CCR0B,250);Tim3_M23_CCR_Set(Tim3CCR1A,750);Tim3_M23_CCR_Set(Tim3CCR1B,250);Tim3_M23_Run();下载视频
2020-12-23 2