This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS570LS0914: BTC interrupt is triggered with invalid measurements

Part Number: TMS570LS0914

Hey everyone,

we noticed, that our System runns into an error because of the values, that are measured by the DMA.

After an undefined time our microcontroller triggers the BTC interrupt to fast, so that our measured Values have not the defined number of measurements:

In this screenshot we are sending out the number of measurements and the time between each BTC Interrupt (using OS Tick count).

Our configuration of the DMA module are the following:
dmaCtrl->CHCTRL    = 0x0;                  
dmaCtrl->FRCNT     = 10u;                 
dmaCtrl->ELCNT     = 4u;
dmaCtrl->ELDOFFSET = 4u;                   
dmaCtrl->ELSOFFSET = 0u;                   
dmaCtrl->FRDOFFSET = 0x0;                  
dmaCtrl->FRSOFFSET = 0;                    
dmaCtrl->PORTASGN  = 0x4u;                 
dmaCtrl->RDSIZE    = ACCESS_32_BIT;        
dmaCtrl->WRSIZE    = ACCESS_32_BIT;        
dmaCtrl->TTYPE     = FRAME_TRANSFER;       
dmaCtrl->ADDMODERD = ADDR_FIXED;           
dmaCtrl->ADDMODEWR = ADDR_INC1;            
dmaCtrl->AUTOINIT  = AUTOINIT_ON;         

Do you have any supposition, what can cause that behave of the software?

Thank you for your support.

Best Regards,

Tom

  • Hi Tom,

    The BTC should be generated after the last element of the last frame has been transferred. In your case, BTC is generated by 4th element of 10th frame has been transferred. 

    Does your BTC occur before the last element is transferred?