硬汉嵌入式论坛

 找回密码
 立即注册
查看: 847|回复: 5
收起左侧

[LwIP] lwip使用dhcp后做TCPclient端不好使

[复制链接]

2

主题

8

回帖

14

积分

新手上路

积分
14
发表于 2023-8-7 10:33:13 | 显示全部楼层 |阅读模式
如题,我是在stm32f4上裸机跑的lwip,因为插拔调静态ip什么的太麻烦就想启动lwip的dhcp给板子自动分配ip,现在的问题是,我打开dhcp后,tcpserver和udp都是好使的,只有tcpclient不好使。

连接在路由器上,正常情况(不开启dhcp)时,TCP的所有功能都可以用,调成dhcp后能ping通单片机,但是板子做客户端就有问题,调用tcp_connect进不去自己写的回调函数,求教各位大神
客户端初始化函数:

按理来讲电脑做服务器端,代码没问题的情况下只要开着tcp_connect里的那个端口不就应该能接到数据吗?
回复

使用道具 举报

2

主题

8

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2023-8-7 10:35:02 | 显示全部楼层
初始化函数好像没发出来,图如下:
client.png
回复

使用道具 举报

2

主题

8

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2023-8-10 13:55:28 | 显示全部楼层
看了一下,好像是dhcp start不成功,走进client初始化里的addr还是0,dhcp的初始化总是在已经进入while1开始执行MX_LWIP_PROCESS之后才开始完全初始化好的
不过问题是发现了,但是怎么解决还没搞好,我再试试
回复

使用道具 举报

2

主题

8

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2023-8-10 14:38:39 | 显示全部楼层
解决了,在MX_LWIP_Process里写一个判断当前addr是否已经有值的判断,如果有了就在这里进行板子client的初始化,亲测成功
client.png
如果大家有更好的思路也可以交流一下
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106738
QQ
发表于 2023-8-10 16:23:44 | 显示全部楼层
WhiteFlame 发表于 2023-8-10 14:38
解决了,在MX_LWIP_Process里写一个判断当前addr是否已经有值的判断,如果有了就在这里进行板子client的初 ...

看到你二楼发的,我就打算回复一下,你这个DHCP还不知道成功没有成功就connect了。

再看4楼已经解决了。
回复

使用道具 举报

2

主题

8

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2023-8-10 17:01:03 | 显示全部楼层
eric2013 发表于 2023-8-10 16:23
看到你二楼发的,我就打算回复一下,你这个DHCP还不知道成功没有成功就connect了。

再看4楼已经解决了 ...

还是对dhcp的操作不熟悉,总之谢谢硬汉哥回复
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-3 02:34 , Processed in 0.240992 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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