目前,我在F1c8t6的板子上,可以实现 串口DMA发送数据,也可以配置使用 空闲中断 +DMA 实现不定长数据接收,但是将接收的数据 是通过 printf 发送到串口助手,进行调试查看的,
现在,我想知道能不能同时配置 DMA 收发,利用空闲中断 +DMA 接收不定长数据,然后通过 DMA 发送,将接收的数据直接通过 DMA 发送输出到 串口助手进行查看呢???
我试了一下,用printf 可以将接收到的不定长数据 发送到串口助手,但是配置加上 DMA发送 就不行,DMA接收中的结构体成员 buffsize为 接收到的数据长度,内存地址就是定义的接收数组名,然后串口助手接收不到任何字符,,是需要怎样配置呢??或者有没有这种的例程可以参考下?
望 论坛大佬不吝赐教,感激不尽!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
http://www.openedv.com/forum.php ... d=273874&extra=
你下错了
你好,你的例程 我下载看过了, 在前台你也是 就用printf 将接收到的数据输出的呀,我想问 能不能将接收到的数据,利用DMA TX端 进行输出???
我的操作是:在前台检测到 接收的标志后,然后 关掉DMA接收通道,算出本次接收到的长度,然后 赋值给 DMA TX 结构体成员的 BuffSize,将接收缓存的地址 赋给 TX的内存地址,然后使用 串口DMA发送,将接受到的数据发出去。。。。但是用串口助手 没有接收到数据。。不知道是思路不对还是 哪的配置有问题??
C:UsersAdministratorDesktopQQ截图20181005000700.png
一周热门 更多>