周半梅 发表于 2025-5-10 08:01

串口空闲中断老是不触发,是我打开方式有问题吗?

HAL库里配置了空闲中断但一直进不去,得手动读DR?

Clyde011 发表于 2025-5-10 08:05

有可能是别的中断屏蔽了它。

公羊子丹 发表于 2025-5-10 08:06

HAL里空闲中断得配NVIC和USART都打开才行。

周半梅 发表于 2025-5-10 08:07

是不是DMA方式下你没读状态寄存器?

帛灿灿 发表于 2025-5-10 08:07

我当时是改用LL库才搞定。

童雨竹 发表于 2025-5-10 08:08

打断点看进USART_ISR了吗?

万图 发表于 2025-5-10 08:09

我记得需要清空标志位,不然不触发。

Wordsworth 发表于 2025-5-10 08:10

会不会是串口波特率不稳定?

Bblythe 发表于 2025-5-10 08:10

你用的是串口几?我感觉USART3有点问题。

Pulitzer 发表于 2025-5-10 08:11

其实空闲中断不太稳定,干脆改成定时查询了。

Uriah 发表于 2025-5-10 08:12

打个log看看有没有触发中断函数。

qintian0303 发表于 2025-5-10 11:00

不能把,用着感觉没问题,你的定位是哪里,是串口中断吗

yzzly 发表于 2025-5-23 09:23

你认为是空闲了,可能实际上根本没有空闲

gaonaiweng 发表于 2025-5-31 18:13

如果你使用DMA方式接收,IDLE中断一般用于判断一帧数据接收结束。
页: [1]
查看完整版本: 串口空闲中断老是不触发,是我打开方式有问题吗?