野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7843|回复: 4

如何理解3个以上的串口使用两个DMA的问题

[复制链接]
发表于 2021-11-14 13:06:37 | 显示全部楼层 |阅读模式

一般的情况下,STM32有两个DMA,两个串口使用两个DMA我能理解
但是两个以上的串口的使用两个DMA这种情况就一直无法理解,这个现在限制我的串口的使用数量。
我理解是这样的,设备虽然有多个DMA通道,但是只有两个DMA转换器,同一时间只能有两串口在转换。
1)对于DMA接收,如果这个时候有三个串口同时在与主设备在通讯,比如都是在向主设备发送数据,那这个时候主设备是不是就会收不到某一个设备的数据?
2)对于DMA发送,如果这个时候主设备需要给三个从设备使用串口发送数据,这时主设备的总裁器会自己判断先发送哪个吗?还是说需要自己判断DMA是否BUSY?

回复

使用道具 举报

发表于 2021-11-15 08:53:16 | 显示全部楼层
看这段就可以很好解决你的疑问了
野火论坛202111150852421312..png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-23 22:27:24 | 显示全部楼层
LF_laffy 发表于 2021-11-15 08:53
看这段就可以很好解决你的疑问了

还是不太理解,其实就是如果同时使用了DAM,那他就会根据优先级先后响应是吗?
回复 支持 反对

使用道具 举报

发表于 2021-11-25 19:21:38 | 显示全部楼层
weboser 发表于 2021-11-23 22:27
还是不太理解,其实就是如果同时使用了DAM,那他就会根据优先级先后响应是吗? ...

对的,按照优先级进行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-3 22:57:51 | 显示全部楼层
一级菜鸟 发表于 2021-11-25 19:21
对的,按照优先级进行

我试试看
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-19 09:40 , Processed in 0.046124 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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