关于 STM32 F1 串口空闲中断+DMA收发 的问题

2019-07-21 07:56发布

目前,我在F1c8t6的板子上,可以实现 串口DMA发送数据,也可以配置使用 空闲中断 +DMA  实现不定长数据接收,但是将接收的数据 是通过 printf 发送到串口助手,进行调试查看的,
现在,我想知道能不能同时配置 DMA 收发,利用空闲中断 +DMA 接收不定长数据,然后通过 DMA 发送,将接收的数据直接通过 DMA 发送输出到 串口助手进行查看呢???
我试了一下,用printf 可以将接收到的不定长数据 发送到串口助手,但是配置加上 DMA发送 就不行,DMA接收中的结构体成员 buffsize为 接收到的数据长度,内存地址就是定义的接收数组名,然后串口助手接收不到任何字符,,是需要怎样配置呢??或者有没有这种的例程可以参考下?
望 论坛大佬不吝赐教,感激不尽!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
275891381
1楼-- · 2019-07-21 10:46
mhsdsa
2楼-- · 2019-07-21 15:44
求大佬指点,谢谢
275891381
3楼-- · 2019-07-21 20:55
我发过可用的例子,你直接下载吧
MrL
4楼-- · 2019-07-21 21:17
275891381 发表于 2018-10-4 09:16
我发过可用的例子,你直接下载吧

你好,你的例程 我下载看过了, 在前台你也是 就用printf 将接收到的数据输出的呀,我想问  能不能将接收到的数据,利用DMA TX端 进行输出???
我的操作是:在前台检测到 接收的标志后,然后 关掉DMA接收通道,算出本次接收到的长度,然后 赋值给 DMA TX 结构体成员的 BuffSize,将接收缓存的地址 赋给 TX的内存地址,然后使用 串口DMA发送,将接受到的数据发出去。。。。但是用串口助手 没有接收到数据。。不知道是思路不对还是 哪的配置有问题??
275891381
5楼-- · 2019-07-22 00:03
 精彩回答 2  元偷偷看……
MrL
6楼-- · 2019-07-22 02:47
本帖最后由 MrL 于 2018-10-5 00:12 编辑

C:UsersAdministratorDesktopQQ截图20181005000700.png

一周热门 更多>