ST意法半导体
直播中

胡秋阳

13年用户 1541经验值
私信 关注
[问答]

UART DMA Rx,IDLE中断被触发但看起来不正确是哪里出了问题?

我正在尝试使用DMA在STM32H745i-DISCO板(在核心CM7上)上实现不确定长度的uart消息接收。我的想法是使用 IDLE 中断然后禁用 DMA_stream,获取 NDTR 寄存器并中止传输以触发 DMA TC 中断以获取数据。我一次发送一个字符串,但看起来每次在收到第一个字节后都会触发 IDLE 中断。而且 UART_DMAReceiveCplt() 函数永远没有机会被调用。任何人都可以帮我吗?
谢谢!








回帖(1)

贾乐

2023-1-17 10:15:05
我将代码从 CM7 移到了 CM4,它可以工作。我认为这应该与 M7 核心的 DMA_MEM 可访问性问题有关。我会试着自己弄清楚。
此外,Tilen Majerle 的 github repo 也使用 IDLE 中断而不是 RTO 中断。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分