工具与软件:
尊敬的团队:
我们 必须对应用使用 UART DMA 回调、现在我们只会在第一次获得 DMA 回调中断、 但下次无法接收中断、以此类推。
我们将使用 uart_echo_dma ()示例作为参考。
获取回调后、我们必须为下一消息或数据重新初始化 DMA 回调。 但重新初始化后、我 下次也无法获得 DMA 回调中断、请有人帮我解决此问题。
DMA receive callback function.
void RxCallback(UART_Handle handle, UART_Transaction *trans)
{
/* Read 8 chars */
gNumBytesRead = 0U;
trans->buf = &gUartReceiveBuffer[0U];
trans->count = APP_UART_RECEIVE_BUFSIZE;
UART_Transaction_init(trans);
CacheP_wbInv((void *)&gUartReceiveBuffer[0U], APP_UART_RECEIVE_BUFSIZE, CacheP_TYPE_ALL);
transferOKrx = UART_read(gUartHandle[CONFIG_UART_CONSOLE], trans);
APP_UART_ASSERT_ON_FAILURE(transferOKrx, trans);
}
请告诉我、下一次或永远接收数据的最佳方式是什么。


