找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2475|回复: 2
收起左侧

关于stm32中的dma中断和uart串口中断,不太懂,求大神解答

[复制链接]
ID:839835 发表于 2021-4-29 17:33 | 显示全部楼层 |阅读模式
20黑币
首先,如果开启dma传输uart,是否是先开启uart中断,等待串口接收或者发送完成,标志位清零,再开启dma中断,并且配置dma传输好优先级,等待uart传输完成,dma标志位清零。实现串口dma的收发?

回复

使用道具 举报

ID:883167 发表于 2021-4-29 18:27 | 显示全部楼层
DMA中断和UART中断我也没有很细致的研究过了。之前大概看过类似的例子,好像UART串口使能中断后,如果有接到UART数据,会进入中断,必须要清除RXNE接收标志位,一般需要用软件向RXNE写零来清零。在UART串口中断函数中,如果有比它更高级的中断函数运行,会有可能接收丢失,所以不能长时间执行中断程序。另外不能在中断函数中有延时函数!!这样会出错的。另外UART接收到数据,如果没有去取,然后又接到数据了,就会溢出错误了,而DMA接收串口数据,一般用FIFO形式,这样阴谋诡计 出错导致数据选择,但需要先配置 DMA配置,具体我也忘记了,你可以找一下例程,照着操作几遍就可以了。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:839835 发表于 2021-4-29 19:34 | 显示全部楼层
林大侠 发表于 2021-4-29 18:27
DMA中断和UART中断我也没有很细致的研究过了。之前大概看过类似的例子,好像UART串口使能中断后,如果有接 ...

我先看看,,好难得感觉。手册说的太官方,看不懂。谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表