硬汉嵌入式论坛

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

[LwIP] Lwip移植ping不通

[复制链接]

75

主题

684

回帖

909

积分

金牌会员

积分
909
发表于 2022-1-25 20:41:22 | 显示全部楼层 |阅读模式
平台:V6+DM9162,裸机
问题:初始化什么的都正常,PHY的寄存器读写正常,正常移植LWIP后无法ping不通有人遇到过吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106731
QQ
发表于 2022-1-26 10:40:57 | 显示全部楼层
估计是驱动部分移植有问题。
回复

使用道具 举报

75

主题

684

回帖

909

积分

金牌会员

积分
909
 楼主| 发表于 2022-1-26 12:33:50 | 显示全部楼层
eric2013 发表于 2022-1-26 10:40
估计是驱动部分移植有问题。

应该是驱动问题。设置回环发送数据都没有触发中断,但是绿灯倒是显示有数据在发出去,一闪一闪的。
回复

使用道具 举报

75

主题

684

回帖

909

积分

金牌会员

积分
909
 楼主| 发表于 2022-1-26 15:42:47 | 显示全部楼层
找到问题了,我手里版本的HAL库底层有问题,重构一下就好了。白白浪费两三天时间。
回复

使用道具 举报

75

主题

684

回帖

909

积分

金牌会员

积分
909
 楼主| 发表于 2022-1-26 20:05:53 | 显示全部楼层
eric2013 发表于 2022-1-26 10:40
估计是驱动部分移植有问题。

请假一下大佬,DHCP按照官方提供资料没有成功,能帮忙看看吗?裸机移植,DHCP部分逻辑如下
  1. #if USE_DHCP
  2.     uint8_t cnt = 0;
  3.     err_t err = dhcp_start (&gnetif);
  4.     if(err == ERR_OK)
  5.     {
  6.         printf("lwip dhcp start success...\n\n");
  7.     }      
  8.     else
  9.     {
  10.         printf("lwip dhcp start fail...\n\n");
  11.         return ;
  12.     }
  13.     while(ip_addr_cmp(&(gnetif.ip_addr),&ipaddr))
  14.     {
  15.        HAL_Delay(500);
  16.        dhcp_fine_tmr();
  17.        ++cnt;
  18.        if (cnt == 60 * 2)
  19.        {
  20.            cnt = 0;
  21.            dhcp_coarse_tmr();
  22.        }
  23.     }
  24. #endif
复制代码

Start部分过了,但是一直获取不了IP地址。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-2 22:16 , Processed in 0.240741 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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