Kevin201707 发表于 2019-5-11 13:00:46

UART单线半双工通信问题

使用STM32F072 USART单线半双工模式通信,想要利用DMA+IDLE方式接收不定长数据,发现只要打开IDLE中断,就会一直触发IDLE中断。有没有高手遇到过?怎么解决?

edmundlee 发表于 2019-5-11 13:13:20

先清了SR里的IDLE中断标志位, 后再打开IDLE中断

wenyangzeng 发表于 2019-5-11 13:27:05

IDLE中断必须先读一次SR寄存器,再读一次DR寄存器,才能清除IDLE中断。

jbchen4468 发表于 2019-5-11 16:02:14

我也问

Kevin201707 发表于 2019-5-12 19:15:58

edmundlee 发表于 2019-5-11 13:13
先清了SR里的IDLE中断标志位, 后再打开IDLE中断

中断标志清除了

Kevin201707 发表于 2019-5-12 19:16:37

wenyangzeng 发表于 2019-5-11 13:27
IDLE中断必须先读一次SR寄存器,再读一次DR寄存器,才能清除IDLE中断。

有直接的清楚寄存器可以清除,F072跟F103不同。
页: [1]
查看完整版本: UART单线半双工通信问题