请问STM32的以太网如何动态切换速度和双工状态

[复制链接]
4549|5
 楼主| aozima 发表于 2012-9-26 16:25 | 显示全部楼层 |阅读模式
本帖最后由 aozima 于 2012-9-26 18:31 编辑

在实际产品应用中,不可避免的有网线的插拔。
可能重新连接上以后,网络的速率和双工状态发生了变化。
此时驱动程序中应该如何动态切换?

另外,在拔掉时,如果数据包收发都进行到一半,是丢弃还是待连接上以后重来?
这块在参考手册上面没找到详细的说明。
mohanwei 发表于 2012-9-26 16:40 | 显示全部楼层
这个和STM32无关,是应用层的事……
airwill 发表于 2012-9-28 22:56 | 显示全部楼层
在拔掉时,如果数据包收发都进行到一半,是丢弃还是待连接上以后重来?
只能丢弃, 等再接上, 也不可能重来的, 即使相同的数据, 整个数据包也重发过来了.
 楼主| aozima 发表于 2012-9-29 10:17 | 显示全部楼层
我现在做法是把整个描述符链全丢掉,然后整个MAC完整地RESET。
本想只丢描述符中正在收发的那个包的,但不想写太复杂。
myxiaonia 发表于 2014-12-26 09:12 | 显示全部楼层
aozima 发表于 2012-9-29 10:17
我现在做法是把整个描述符链全丢掉,然后整个MAC完整地RESET。
本想只丢描述符中正在收发的那个包的,但不 ...

我看f2例程没有完整复位整个mac啊
chinashaoshuai 发表于 2016-10-20 19:28 | 显示全部楼层
你好,看到之前你的关于stm32 网线热插拔问题,想请教请教。
现在用静态IP地址,上电不插网线,再插网线就不行,连DMA接受中断都不进。还有就是插着网线上电,但是要等一段时间,才能准确接受到,而且拔掉后也是连DMA中断也进不去。我在检测到有网线插入后,会先初始化一遍MAC+DMA 然后set_link_up().能做的都做了,但是还是不行。能发一份怎么处理这个问题的代码吗。谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:RTOS RT-Thread

55

主题

2040

帖子

23

粉丝
快速回复 在线客服 返回列表 返回顶部