我用的是lan8720 在ucosii 下使用
按照原子哥的例程操作
静态ip可以使用 打开dhcp获取不到ip
[AppleScript]
纯文本查看 复制代码
//DHCP任务函数void lwip_dhcp_task(void *pdata){u32 ip=0,netmask=0,gw=0;dhcp_start(&lwip_ne
tif);lwipdev.dhcpstatus=0; while(1){ ip=lwip_netif.ip_addr.addr;netmask=lwip_netif.netmask.addr;gw=lwip_netif.gw.addr;if(ip!=0) //在这里设置断电 ip总是0{lwipdev.dhcpstatus=2;//DHCP3é1|lwipdev.ip[3]=(uint8_t)(ip>>24); lwipdev.ip[2]=(uint8_t)(ip>>16);lwipdev.ip[1]=(uint8_t)(ip>>8);lwipdev.ip[0]=(uint8_t)(ip);lwipdev.netmask[3]=(uint8_t)(netmask>>24);lwipdev.netmask[2]=(uint8_t)(netmask>>16);lwipdev.netmask[1]=(uint8_t)(netmask>>8);lwipdev.netmask[0]=(uint8_t)(netmask);lwipdev.gateway[3]=(uint8_t)(gw>>24);lwipdev.gateway[2]=(uint8_t)(gw>>16);lwipdev.gateway[1]=(uint8_t)(gw>>8);lwipdev.gateway[0]=(uint8_t)(gw);break;}else if(lwip_netif.dhcp->tries>LWIP_MAX_DHCP_TRIES){ lwipdev.dhcpstatus=0XFF;IP4_ADDR(&(lwip_netif.ip_addr),lwipdev.ip[0],lwipdev.ip[1],lwipdev.ip[2],lwipdev.ip[3]);IP4_ADDR(&(lwip_netif.netmask),lwipdev.netmask[0],lwipdev.netmask[1],lwipdev.netmask[2],lwipdev.netmask[3]);IP4_ADDR(&(lwip_netif.gw),lwipdev.gateway[0],lwipdev.gateway[1],lwipdev.gateway[2],lwipdev.gateway[3]);break;} delay_ms(250); }lwip_comm_dhcp_delete();}