电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区
论坛
原厂专区
【MM32F103 MiniBoard试用体验】+MiniBoard UART2 DMA收发测试
【MM32F103 MiniBoard试用体验】+MiniBoard UART2 DMA收发测试
loudianxin
LV2工程师
| 2016-11-21 16:24:30
浏览量 771
回复:3
发表新帖
本帖最后由 loudianxin 于 2016-11-21 20:45 编辑
看了看板子的资源还是挺好的,例程里面有UART1 的dma配置。所以先不管UART1,从UART2开始。对于STM32串口接收有一个空闲中断用它来接收不定长数据还是比较方便,但是看了MM32的串口没发现有这个功能,亦或者是有类似的我没找到。在这里提出来希望有做过的一起讨论下接受不定长数据的方法。 下面附带UART2 DMA收发的代码: 按照例程稍作修改 1.首先初始化GPIO这个比较简单 2.初始化串口主要有 波特率,字长,停止位,奇偶检验位,硬件数据流控制,收发模式 3.使能UART2的DMA 功能 UART_DMACmd(UART2,UART_DMAReq_EN,ENABLE); //UART2 DMA Enable 4.初始化DMA通道,uart2接收使用DMA1_CH6,发送使用DMA1_CH7,在配置的时候要注意数据方向,其他都大同小异。具体可以参看代码。 ps: 串口采用DMA发送的时候可以随意配置发送数据长度(当然不要超过数组长度),发送完成后会进入DMA发送完成中断,在中断里面清掉对应的中断标志。在发送新的数据时要注意中心配置DMA的数据源(即数据发送数组)和DMA数据长度。否则在重新发送的时候数据总是会出现0。问过灵动微技术说是由于发送数据时DMA发送到数组的最后一位,如果重新发送则指针不能自动移动到数组的开始元素,所以发送数据不对 。
本帖最后由 loudianxin 于 2016-11-21 20:45 编辑
看了看板子的资源还是挺好的,例程里面有UART1 的dma配置。所以先不管UART1,从UART2开始。对于STM32串口接收有一个空闲中断用它来接收不定长数据还是比较方便,但是看了MM32的串口没发现有这个功能,亦或者是有类似的我没找到。在这里提出来希望有做过的一起讨论下接受不定长数据的方法。 下面附带UART2 DMA收发的代码: 按照例程稍作修改 1.首先初始化GPIO这个比较简单 2.初始化串口主要有 波特率,字长,停止位,奇偶检验位,硬件数据流控制,收发模式 3.使能UART2的DMA 功能 UART_DMACmd(UART2,UART_DMAReq_EN,ENABLE); //UART2 DMA Enable 4.初始化DMA通道,uart2接收使用DMA1_CH6,发送使用DMA1_CH7,在配置的时候要注意数据方向,其他都大同小异。具体可以参看代码。 ps: 串口采用DMA发送的时候可以随意配置发送数据长度(当然不要超过数组长度),发送完成后会进入DMA发送完成中断,在中断里面清掉对应的中断标志。在发送新的数据时要注意中心配置DMA的数据源(即数据发送数组)和DMA数据长度。否则在重新发送的时候数据总是会出现0。问过灵动微技术说是由于发送数据时DMA发送到数组的最后一位,如果重新发送则指针不能自动移动到数组的开始元素,所以发送数据不对 。
0
收藏
举报
分享
×
微信分享
扫描二维码分享
qq分享
QQ空间分享
微博分享
我来回复
登录后可评论,请
登录
或
注册
所有回答
数量:
3
loudianxin
2016-11-21
按照例程稍作修改 1.首先初始化GPIO这个比较简单 2.初始化串口主要有 波特率,字长,停止位,奇偶检验位,硬件数据流控制,收发模式 3.使能UART2的DMA 功能 UART_DMACmd(UART2,UART_DMAReq_EN,ENABLE); //UART2 DMA Enable 4.初始化DMA通道,uart2接收使用DMA1_CH6,发送使用DMA1_CH7,在配置的时候要注意数据方向,其他都大同小异。具体可以参看代码。 ps: 串口采用DMA发送的时候可以随意配置发送数据长度(当然不要超过数组长度),发送完成后会进入DMA发送完成中断,在中断里面清掉对应的中断标志。在发送新的数据时要注意中心配置DMA的数据源(即数据发送数组)和DMA数据长度。否则在重新发送的时候数据总是会出现0。问过灵动微技术说是由于发送数据时DMA发送到数组的最后一位,如果重新发送则指针不能自动移动到数组的开始元素,所以发送数据不对 。
0
回复
举报
发布
haodi
2016-11-21
如何收发的哦?
0
回复
举报
发布
灵澈
2016-11-21
楼主后续的帖子质量要高点哦
0
回复
举报
发布
×
举报
举报人:
被举报人:loudianxin
*
类型:
请选择类型
问题质量差
垃圾广告信息
偏离社区主题
违规内容
不友善内容
与社区已有问题重复
以上选项都不是
*
详细原因:
取消
提交
x
收藏成功!点击
我的收藏
查看收藏的全部帖子