STM32
登录
直播中
吴湛
10年用户
1025经验值
擅长:可编程逻辑
私信
关注
[问答]
请问STM32CubeMAX +DMA+USART接收代码收不到数据的原因?
开启该帖子的消息推送
请问
STM32
CubeMAX +DMA+USART接收代码收不到数据的原因?
回帖
(1)
李军林
2021-12-9 10:03:49
2020年春节长假遇上肺炎疫情,只能猫在家里学习STM32CubeMX,开始比较顺利,成功实现了串口接收中断完成的固定字节长度的收发,但是最想要的还是DMA +不定长收发,却发现
DMA接收代码收不到数据
(接收缓冲数组一直全部是0),
折腾一上午后发现问题所在:
关键点1:因为我先用STM32CubeMX建立了不用DMA的工程,所以当时的初始化代码里没有MX_DMA_Init();,这时候初始化部分的代码如下:
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART1_UART_Init();
MX_TIM1_Init();
关键点2:用STM32CubeMX修改上述工程,启用了串口DMA,STM32CubeMX生成的代码中加入了MX_DMA_Init();这一行,几个自动生成的初始化函数排序如下(此时串口接收不好用!!!!):
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART1_UART_Init();
MX_TIM1_Init();
MX_DMA_Init(); //新增的DMA初始化
关键点3:将串口初始化放到DMA初始化之后,串口DMA收发正常了!修改后的初始化部分排序如下:
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_TIM1_Init();
MX_DMA_Init();
MX_USART1_UART_Init(); //串口初始化必须放在DMA初始化之后!!!
2020年春节长假遇上肺炎疫情,只能猫在家里学习STM32CubeMX,开始比较顺利,成功实现了串口接收中断完成的固定字节长度的收发,但是最想要的还是DMA +不定长收发,却发现
DMA接收代码收不到数据
(接收缓冲数组一直全部是0),
折腾一上午后发现问题所在:
关键点1:因为我先用STM32CubeMX建立了不用DMA的工程,所以当时的初始化代码里没有MX_DMA_Init();,这时候初始化部分的代码如下:
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART1_UART_Init();
MX_TIM1_Init();
关键点2:用STM32CubeMX修改上述工程,启用了串口DMA,STM32CubeMX生成的代码中加入了MX_DMA_Init();这一行,几个自动生成的初始化函数排序如下(此时串口接收不好用!!!!):
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART1_UART_Init();
MX_TIM1_Init();
MX_DMA_Init(); //新增的DMA初始化
关键点3:将串口初始化放到DMA初始化之后,串口DMA收发正常了!修改后的初始化部分排序如下:
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_TIM1_Init();
MX_DMA_Init();
MX_USART1_UART_Init(); //串口初始化必须放在DMA初始化之后!!!
举报
更多回帖
rotate(-90deg);
回复
相关问答
STM32
F429芯片使用
USART
2
接收不到
数据
的
原因
?
2021-12-16
2020
STM32
USART
1串口
接收不到
2016-02-02
3527
为什么RT-Thread在使用串口
DMA
模式的时候
接收
数据
接收不到
00呢?
2023-02-03
744
STM32
l072cz单片机串口
USART
发生错误
接收不到
数据
2019-01-23
4170
USART
串口输出好像
接收不到
数据
2019-01-14
6117
STM32
F103ZET6开发板
USART
1
接收不到
数据
2017-12-06
5027
ch32v307RCT6 485通信,
usart
1只有第一个byte能正确
接收
其他都错误怎么处理?
2022-10-19
904
stm32
中的gprs模块
接收不到
数据
2019-03-12
2091
串口调试有时串口助手
接收不到
2019-07-04
1680
GPS模块程序改为
DMA
接收
不出
数据
2019-03-29
1302
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分