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.

DMA receive gives Buffer over run error in UART receive

Other Parts Discussed in Thread: MSP430F6438

Hi ,

 I am using MSP430F6438. I am implementing UART through DMA. In this while receiving through DMA the uart buffer overrun error occurs, i checked in debugger, the UCOE and UCRXERR bits are set. My code as follows

                DMA1CTL &= ~DMAEN; 
                  
                DMACTL0 = DMA1TSEL_16;    
              
                DMA1CTL |= DMADT_0; 
           
                DMA1CTL |= DMADSTINCR_3;   
                      
                DMA1CTL |= DMASBDB;    
            
                DMA1SZ = buf_ptr->szBuf;    //size
               
                DMA1SA = (uint32_t)&uartRegister0->rxbuf;
              
                DMA1DA = (uint32_t)buf_ptr->txrxbuf_ptr;  //buffer to store the received data
                     
                DMA1CTL = DMAIE;  
                    
                DMA1CTL &= ~DMAIFG;
                     
                DMA1CTL |= DMAEN;   

in DMA registers the destination address also not increased. can anyone guide me. I am using for transfer DMA0 channel for receiving DMA1 channel, and i am try to to read the data which is send by the DMA0 using loop back concept.

It reads the last byte i.e if suppose i am sending {5,3,4} meane it takes 4 as las byte position but before that FF only it gets. But the trigger happens properly and DMASZ also decrements per trigger.

 can anyone please guide me

Thanks in advance

 

**Attention** This is a public forum