OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2857|回复: 8

求教串口DMA接收,当发送过快时DMA死机问题

[复制链接]

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
发表于 2020-4-22 16:44:18 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 wt13568089592 于 2020-4-22 17:32 编辑

1.配置了stm32串口空闲中断,接收不定长数据,采用串口DMA 接收。测试发现在115200波特率下,发送到单片机的数据间隔小于6ms时,会造成DMA只能接收第一个数据问题。此后DMA都只能接收第一个数据,串口空闲中断是正常进了的。
2.感觉是串口发送造成的,我在接收到数据后,会暂存在buff里,然后主循环轮训,有没有数据,有数据了会发出去。这样感觉就出问题了。估计是串口只接收了一个就进入中断了。
3.我感觉是 串口问题,是什么原因导致串口只能接收第一个数据呢?
4.经研究发现,还是因为串口同时收发造成啊。这个是具体能不能解决啊?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
 楼主| 发表于 2020-4-22 16:54:29 | 显示全部楼层
是串口模块出问题了呢?还是DMA出问题了呢?
回复

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2020-4-22 17:22:31 | 显示全部楼层
1、6ms周期发送数据,每次发送数据多长?
2、出问题后你也按6ms周期发送?
一分耕耘一分收获。
回复

使用道具 举报

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
 楼主| 发表于 2020-4-22 17:55:31 | 显示全部楼层
yklstudent 发表于 2020-4-22 17:22
1、6ms周期发送数据,每次发送数据多长?
2、出问题后你也按6ms周期发送?

每次发4个byte,如果发得长更明显
回复

使用道具 举报

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
 楼主| 发表于 2020-4-22 17:55:58 | 显示全部楼层
wt13568089592 发表于 2020-4-22 17:55
每次发4个byte,如果发得长更明显

出问题后就手动发送,间隔几秒都还是不能接收
回复

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2020-4-22 18:47:03 | 显示全部楼层
wt13568089592 发表于 2020-4-22 17:55
出问题后就手动发送,间隔几秒都还是不能接收

过几秒后会恢复?
一分耕耘一分收获。
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2020-4-22 20:25:19 | 显示全部楼层
回复

使用道具 举报

89

主题

172

帖子

0

精华

高级会员

Rank: 4

积分
607
金钱
607
注册时间
2015-9-7
在线时间
141 小时
 楼主| 发表于 2020-4-23 08:48:51 | 显示全部楼层
yklstudent 发表于 2020-4-22 18:47
过几秒后会恢复?

不会,出线了就一直会这样
回复

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2020-4-24 14:34:16 来自手机 | 显示全部楼层
wt13568089592 发表于 2020-4-23 08:48
不会,出线了就一直会这样

没理由,应该还是你代码可能写的有问题
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-26 05:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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