EPWM_EnableAcc(EPWM1, 0, 10, EPWM_IFA_ZERO_POINT);
这个是控制自动产生10个累加器然后自动关闭PWM输出吗?
void EPWM1P0_IRQHandler(void)
{
EPWM_ClearAccInt(EPWM1, 0);
}
试验了一下 貌似又无法实现!
EPWMEnableAcc是控制自动产生10个累加器然后自动关闭PWM输出吗?
![](http://uphotos.eepw.com.cn/1642473880/thumb/avatar.jpg)
请参考这个代码
****************************************************************************************/
/* EPWM start output waveform functoin */
/****************************************************************************************/
// Num, Number of wavform outputing from PWM pin
// Delay_PWM, After such PWM Period, ADC start to convert
void EPWM_Output(uint8_t Num, uint16_t Delay_PWM)
{
if (Num == 0) return ;
EPWM1->CNTCLR = ~0 ;
EPWM1->IFA[0] = 0 ;
EPWM1->IFA[0] = 0x80000000 + Num ; // CH0,interrupt every Num period
EPWM1->AINTSTS = ~0 ; // Clear interrupt flag
NVIC_ClearPendingIRQ(EPWM1P0_IRQn);
EPWM1->IFA[2] = 0 ;
EPWM1->IFA[2] = 0x80000000 + Delay_PWM ; // CH1,interrupt every Delay_PWM period
NVIC_ClearPendingIRQ(EPWM1P1_IRQn);
EPWM1->AINTEN = 5 ; // Enable PWM intrrupt,Disable output after such number of period
PDMA_Initial(Data_Num) ; // Configure number of data that PDMA transfering
EPWM_TRIGGER_SYNC_START(EPWM1); // Active EPWM0 synchronously
}
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |