直连STM32开发板与笔记本以太网通信故障排查及静态IP配置咨询
直连STM32开发板与笔记本以太网通信故障排查及静态IP配置咨询
看起来你遇到的问题核心是笔记本的以太网配置没有被系统优先识别,同时链路层可能存在异常,结合你之前正常、回家后失效的情况,大概率是系统网络配置优先级或者临时故障导致的,咱们一步步来排查解决:
第一步:先搞定以太网图标红叉的问题
红叉说明系统认为以太网链路是断开的,但你提到ping能通,这里可能是系统识别延迟或者硬件连接的小问题:
- 先检查物理连接:换一根直连网线试试(说不定回家路上压坏了),另外有些STM32开发板的ETH接口不支持自动MDI-X,可能需要交叉网线,你可以临时换交叉线测试下;同时看看开发板上的ETH指示灯(如果有的话)是否亮,确认硬件链路是通的。
- 禁用再启用以太网适配器:打开「网络连接」,右键以太网图标,先选「禁用」,等10秒再选「启用」,强制系统重新识别链路。
第二步:确保静态IP配置真的生效了
有时候在控制面板里设置了静态IP,但系统没真正加载:
- 按下Win+R输入
cmd打开命令提示符,输入ipconfig /all,找到「以太网适配器」的条目,仔细看IPv4地址是否是你设置的192.168.3.2,子网掩码255.255.255.0。如果不是:- 先把IPv4设置改成「自动获取IP地址」,点击应用;
- 再改回静态IP配置,保存后再次用
ipconfig验证。
- 另外提个小细节:你设置的网关
192.168.3.0是子网的网络地址,不是有效的网关(网关得是子网内的可用IP),直连场景下其实可以把网关留空,或者改成STM32的IP192.168.3.1,这样更合理,避免路由冲突。
第三步:让系统优先使用以太网(关键!)
你说Hercules显示的是WiFi的IP,这是因为系统默认WiFi的网络优先级比以太网高,导致程序优先走WiFi链路:
- 打开「网络连接」,按Alt键调出顶部菜单栏,选「高级」→「高级设置」;
- 在「适配器和绑定」选项卡里,把「以太网」适配器拖到「WLAN」的上方,点击确定;
- 这样系统会优先使用以太网的网络配置,Hercules应该就能识别到你设置的
192.168.3.2了。
第四步:手动指定Hercules的网络接口
有些版本的Hercules支持手动选择使用的网卡,你可以试试:
- 打开Hercules切换到TCP客户端模式,找找是否有「网络接口」的下拉选项,手动选择对应的以太网适配器(名称一般是「以太网」或者带你网卡型号的名称),而不是WiFi接口,这样就能强制程序走以太网链路连接STM32。
第五步:排查防火墙/杀毒软件干扰
回家后可能更新了杀毒软件或者防火墙设置,导致39端口被阻止:
- 临时关闭Windows防火墙试试:打开「控制面板」→「Windows Defender防火墙」→「打开或关闭Windows Defender防火墙」,选择关闭(测试完记得打开),然后尝试连接STM32;
- 如果关闭后能连接,说明是防火墙的问题,需要添加规则:允许TCP 39端口的入站和出站连接,具体可以在防火墙的「高级设置」里新建规则。
按照上面的步骤一步步来,应该能恢复之前的正常连接状态。
备注:内容来源于stack exchange,提问作者Younes CHTIOUI




