请问stm32串口中断接收数据被持续的外部中断会导致接收数据异常吗?

2019-07-14 13:35发布

情景是这样的,STM32串口使用中断接收数据,但是外部中断优先级高于串口中断,当串口正接收数据时(还没接收完),被外部中断所中断,并且是持续的多次长时间的外部中断,也就是说很长一段时间是会响应外部中断而不会处理串口接收中断,,这样的情况会导致串口接收数据异常么,比如说接收数据不完整之类的问题?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
东少2016
1楼-- · 2019-07-14 18:41
 精彩回答 2  元偷偷看……
Sabrina_cc
2楼-- · 2019-07-14 19:42
会的,可以用dma 来接收
guanrui1202
3楼-- · 2019-07-14 22:17
应该会丢掉数据.
nvhwdfwre
4楼-- · 2019-07-15 00:43
肯定会导致数据丢失、错乱,这种情况下不适合串口通讯,建议考虑4楼的提议,直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。节省了CPU的资源来做其他操作。
UserMen
5楼-- · 2019-07-15 04:57
应该不影响硬件接收到一个字节的数据,但是如果程序不能及时响应中断可能造成接收到的数据来不急不取走而覆盖,造成数据丢失的想象。
爱雪爱雪
6楼-- · 2019-07-15 10:07
 精彩回答 2  元偷偷看……

一周热门 更多>