Part Number: TMS320F280049 1,There have been several problems with platform switching (switching from TMS320F28062 to TMS320F280049) recently About interrupt nesting: Enable in eg: code has two interrupts: Timer0 and ADCA2, now operate that I need to close TIMER0, after entering ADCISR to prevent TIMER0 from interrupting the execution of programs in ADCISR. The code deals with the following: interrupt void adc_over_isr() { AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1; PieCtrlRegs.PIEIER1.bit.INTx7 = 0; AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1; PieCtrlRegs.PIEACK.all = PIEACK_GROUP10; EINT; ...... code…… PieCtrlRegs.PIEIER1.bit.INTx7 = 1; } Now execute according to the above code, the program will enter an illegal interrupt (TMS320F28062 will not occur). If you change to Enable Timer0 and ADCA1 (both PIE1 group interrupts), and then by the above logic operation, the program will not enter an illegal interrupt, the code can run properly. What is the cause of this? 2,When using Enable Timer0 and ADCA1 interrupts to execute code, it is found that some variables are changed after entering ADC interrupt service subroutine in the process of interrupt nesting, and the changes of these variables should be executed by TIMER0 interrupt, so it is suspected that TIMER0 is not completely closed after entering ADC interrupt service subroutine, and it will occasionally enter. eg:interrupt void adc_over_isr() interrupt void adc_over_isr() { AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1; PieCtrlRegs.PIEIER1.bit.INTx7 = 0; AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1; PieCtrlRegs.PIEACK.all = PIEACK_GROUP10; EINT; if(gStepAlgo>eSA_PwmOff) { ...... code…… }else{ ...... code…… } gStepAlgo_pre = gStepAlgo; PieCtrlRegs.PIEIER1.bit.INTx7 = 1; } It is found in the above code that gStepAlgo becomes larger than eSA_PwmOff after sequential execution of else segment code (gStepAlgo changes should be performed in TIMER0). In theory, gStepAlgo should change first in TIMER0 interrupt and then enter ADC interrupt to execute IF segment code. I don't understand here. I need your support. 3,With regard to the software configuration of X-buffer, there are some details that would like to be supported because of the great difference in the platform here.
↧