我想让四路ADC都采样完成后,再触发PWM中断进行处理,请问它们之间能有办法关联起来吗?
WilliamFang:
或者用一个全局定时器周期计数,当计数器开始时,前采样,采样完成后再触发PWM中断。可以实现这样的功能吗?
,
Green Deng:
你好,请问你提到的“触发PWM中断进行处理”是指触发什么PWM中断?是处理ADC的采样数据吗?
,
WilliamFang:
是的
,
Green Deng:
你好,PWM中断只能用于触发ADC采样,而ADC采样数据的处理是在ADC中断中就处理完的,不需要中断触发。(或者你是要对采样到的数据进行其他处理?)
另外,一般来说只能PWM触发ADC采样,没有ADC触发PWM的操作。
,
WilliamFang:
EPwm7Regs.ETSEL.bit.INTSEL = ET_CTR_PRDZERO;EPwm7Regs.ETSEL.bit.INTEN = 1;EPwm7Regs.ETPS.bit.INTPRD = ET_1ST;
我想在中断里面改变占空比
,
WilliamFang:
对,我需要对采样的数据进行计算,想把计算结果放在PWM中断里去更新
,
Green Deng:
我的理解是,你希望将采样后的数据进行处理,处理完的结果赋值给PWM的占空比相关寄存器从而动态改变PWM占空比。
这样的话不需要ADC触发PWM中断(ADC好像也没有类似的中断可以影响到PWM寄存器的。),ADC在转换完成后会生成一个ADCINT中断,可以用这个中断触发数据处理任务,处理完后直接将计算结果赋值给PWM寄存器就可以了。