1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
情景是这样的,STM32串口使用中断接收数据,但是外部中断优先级高于串口中断,当串口正接收数据时(还没接收完),被外部中断所中断,并且是持续的多次长时间的外部中断,也就是说很长一段时间是会响应外部中断而不会处理串口接收中断,,这样的情况会导致串口接收数据异常么,比如说接收数据不完整之类的问题?
|
|
相关推荐
7个回答
|
|
注意抢占式优先级和响应优先级
|
|
|
|
当然会导致串口数据混乱;
这里需要说一点, 中断中不适合做大量操作,其只是响应中断后将数据运算放到主函数中处理,中断中只是置标志,读取数据而已。 否则你的代码肯定不稳定。 |
|
|
|
会的,可以用dma 来接收
|
|
|
|
应该会丢掉数据.
|
|
|
|
肯定会导致数据丢失、错乱,这种情况下不适合串口通讯,建议考虑4楼的提议,直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。节省了CPU的资源来做其他操作。
|
|
|
|
应该不影响硬件接收到一个字节的数据,但是如果程序不能及时响应中断可能造成接收到的数据来不急不取走而覆盖,造成数据丢失的想象。
|
|
|
|
肯定会的啊,外部中断程序中不要有太多的程序。这样会影响中断响应效率的
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2093 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1931 浏览 3 评论
4526 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
2076 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2587 浏览 1 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 11:59 , Processed in 0.694736 second(s), Total 83, Slave 67 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号