这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 国产MCU » N32串口空闲中断触发后,怎么准确计算接收的数据长度?

共1条 1/1 1 跳转至

N32串口空闲中断触发后,怎么准确计算接收的数据长度?

院士
2025-09-16 17:16:08     打赏

问题:

N32 串口 DMA 接收用空闲中断标记数据结束,中断里想算实际接收长度,按 “BufSize - DMA_GetCurrDataCounter ()” 计算,结果偶尔差 1~2 字节。
比如 BufSize 设 20,DMA 剩余计数 15,实际接收该是 5 字节,却偶尔算出 4 字节,是哪里没处理对?
要不要先清除 DMA 标志再读计数?

回答:

需要先依次读状态寄存器、数据寄存器,用以清除中断标识,再关闭DMA后读取。




关键词: 空闲     中断     长度     接收    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]