hi all
there is a problem when i use the uart tx the data by edma event trigger.the code is as below
unsigned char welcome[] = "Sta";
while(1)
{
CacheDataCleanBuff((unsigned int)(welcome), sizeof(welcome));
Uart_EDMATx(welcome,
sizeof(welcome),
UART_DMA_Tx_CHANNEL_NUM,
UART_DMA_Tx_L_CHANNEL_NUM);
Mercury_Uart_Dma_Wait(UART_DMA_Tx_CHANNEL_NUM);
EDMA3ClrIntr(SOC_EDMA30CC_0_REGS, UART_DMA_Tx_CHANNEL_NUM);
}
the func"Uart_EDMATx" is my own function do the edma paramset config ,edma event trggier and "UARTDMAEnable";
the func"Uart_Dma_Wait" is also my own function do the IPR check indicate the dma complete but not trigger the interrupt to the Cortex,and then EDMA3DisableTransfer and UARTDMADisable;
the problem is when i set the welcome char array is 1 character the uart console can indicate the character only one time;
but if the length of character array is other than length(not 1 character) the uart console can continue tx the character array ;
I use the fifo on in uart and tx_level:1 tx_threhold:1