OpenEdv-开源电子网

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

UDP持续发送数据一段时间就会卡在一个while循环里

[复制链接]

16

主题

164

帖子

0

精华

高级会员

Rank: 4

积分
661
金钱
661
注册时间
2018-11-2
在线时间
139 小时
发表于 3 天前 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 qinlu123 于 2025-5-12 17:24 编辑

{2A24B43F-B5BA-4677-AC45-CAEF60B93FBA}.png.jpg
卡在这个while循环里,以太网停止发送,heth.State一直是BUSY
{70DB2460-5A34-4BDC-B90B-66EAF050FB17}.png.jpg

这个函数一直返回ERR_MEM

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

使用道具 举报

16

主题

164

帖子

0

精华

高级会员

Rank: 4

积分
661
金钱
661
注册时间
2018-11-2
在线时间
139 小时
 楼主| 发表于 前天 13:13 | 显示全部楼层
我还有个疑问,我明明只用UDP单向发送数据,我连网络助手都没开怎么还会偶尔进接收中断
回复

使用道具 举报

16

主题

164

帖子

0

精华

高级会员

Rank: 4

积分
661
金钱
661
注册时间
2018-11-2
在线时间
139 小时
 楼主| 发表于 前天 15:56 | 显示全部楼层
初始化的时候加这么两句heth.Instance->MMCRIMR = ((0x01<<17)|(0x01<<6)|(0x01<<5));
  heth.Instance->MMCTIMR = ((0x01<<21)|(0x01<<15)|(0x01<<14));
回复

使用道具 举报

16

主题

164

帖子

0

精华

高级会员

Rank: 4

积分
661
金钱
661
注册时间
2018-11-2
在线时间
139 小时
 楼主| 发表于 前天 18:19 | 显示全部楼层
qinlu123 发表于 2025-5-13 15:56
初始化的时候加这么两句heth.Instance->MMCRIMR = ((0x01

白搭,还是会进接收中断时间一长就卡死在while循环,我只有把while循环从中断里拿出来改成 if 轮询了
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 昨天 22:12 | 显示全部楼层
qinlu123 发表于 2025-5-13 18:19
白搭,还是会进接收中断时间一长就卡死在while循环,我只有把while循环从中断里拿出来改成 if 轮询了

这样ok?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

164

帖子

0

精华

高级会员

Rank: 4

积分
661
金钱
661
注册时间
2018-11-2
在线时间
139 小时
 楼主| 发表于 8 小时前 | 显示全部楼层

我昨天连续测试10个小时,稳定33Mbps发送。今天我测试在持续高频发送一段时间后关闭高频发送打开网络助手进行一些简单的收发,看接收功能还正不正常。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-15 17:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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