Thank you for answer. @PetrS
The question was being edited.
Changed UART to use DMA in Processor Expert,
The DMA channel and the UART DMA channel are matched.
processor_exp_UART.JPG
processor_exp_DMA.JPG
After DMA initialization is complete
UART has been initialized.
The UART initialization code is shown below.
void UART_Initial(void)
{
/* UART1 Debug Uart Initilize */
// UART1 Wi-Fi UART Initialize
LINFLEXD_UART_DRV_Init(INST_WIFI_UART, &WiFi_uart_State, &WiFi_uart_InitConfig0);
// UART1 (LINFLEXD1) IRQ Disable
INT_SYS_DisableIRQ(LINFLEXD1_RX_IRQn); /* While UART RX is not in use */
INT_SYS_DisableIRQ(LINFLEXD1_RX_IRQn); /* While UART RX is not in use */
// UART1 Buffer Setting
LINFLEXD_UART_DRV_SetRxBuffer(INST_WIFI_UART, &WiFi_UART_RX_Buffer, 1U);
// UART1 Baudrate Setting
LINFLEXD_UART_DRV_SetBaudRate(INST_WIFI_UART, WiFi_BAUD_RATE);
// UART1 Abort Send Data
LINFLEXD_UART_DRV_AbortSendingData(INST_WIFI_UART);
// UART1 Abort Receive Data
LINFLEXD_UART_DRV_AbortReceivingData(INST_WIFI_UART);
// UART1 Remove RX Callback
LINFLEXD_UART_DRV_InstallRxCallback(INST_WIFI_UART, NULL, NULL);
// UART1 Install RX Callback
LINFLEXD_UART_DRV_InstallRxCallback(INST_WIFI_UART,(uart_callback_t) WiFi_UART_Callback, NULL);
LINFLEXD_UART_DRV_InstallErrorCallback(INST_WIFI_UART,(uart_callback_t) WiFi_UART_ErrorCallback, NULL);
// Receiving Start
LINFLEXD_UART_DRV_ReceiveData(INST_WIFI_UART, &WiFi_UART_RX_Buffer, 1);
// UART1 (LINFLEXD4) IRQ Enable
INT_SYS_EnableIRQ(LINFLEXD1_RX_IRQn);
// INT_SYS_EnableIRQ(LINFLEXD1_TX_IRQn);
}
The received data was received by increasing the count value in WiFi_UART_Callback and the arrangement was checked.
+aaaagggfcccxx0888c000:666x,,,,wwww222mppp..++naaapuuum,,,cxxx0777c000:6666555apppcpppkk+aaaaAA
In this way, data is dropped in the middle, and it comes out as if it was received as a duplicate.
Removed UART_Install_Callback to fix the problem.
After that EDMA_DRV_InstallCallback(16,WiFi_UART_Callback,NULL );
I set it as InstallCallback to EDMA using
As above, the same data is duplicated in multiple cases.
Do I need to make any additional settings?