Hi team,
Here's some issues form the customer may need your help:
The chip used is 28027.
Issue:
1. In the code interrupt void inverterISR(void) , here's a statement as below:
#if SENSING_OPTION ==ADC_BASED_SENSING
readCurrVolADCSignals(&offset165, &invVbusInst, &invVbusOffset,
&invVoInst, &invIiInst, &invIiOffset);
Although the value of CMPB is set equal to the time set by ACQPS_SYS_CLKS, from the customer's understanding: the acquired AD values for the voltage, current, etc. of the TMS320F280049 at this time should be the AD values of the previous cycle, if calculated using this AD value, the result might be incorrect?
2.
#define ACQPS_SYS_CLKS 50
EPWM_setCounterCompareValue(INV_ISR_TRIG_PWM_BASE,EPWM_COUNTER_COMPARE_B,
EPWM_getTimeBasePeriod(INV_ISR_TRIG_PWM_BASE)-(50/2));
50/2 is because the clock of the PWM is a 2-division of the system clock, but this 50 is just a sample window. Conversion Time is not included. Does the sample window time for TMS320F280049 include Conversion Time?
From the customer's understanding: the value of CMPB should be set to EPWM_getTimeBasePeriod(INV_ISR_TRIG_PWM_BASE) -- the sum of the time of all AD samples to ensure that the value collected at the time of the interrupt is the AD value of the current cycle.
Could you help check this case? Thanks.
Best Regards,
Cherry
