使用STM32Cube,进行开发。在lWIP中设定静态地址。自动代码生成时,其中IP_ADDRESS,NETMASK_ADDRESS, GATEWAY_ADDRESS这三个值是在什么地方赋值的,这个谁知道。实际使用中,在Cube里设置的值没有起效,必须手工设置,才能有值。调试发现这三个值都是为0。 void MX_LWIP_Init(void) { /* IP addresses initialization */ /* Initilialize the LwIP stack without RTOS */ lwip_init(); /* IP addresses initialization without DHCP (IPv4) */ IP4_ADDR(&ipaddr, IP_ADDRESS[0], IP_ADDRESS[1], IP_ADDRESS[2], IP_ADDRESS[3]); IP4_ADDR(&netmask, NETMASK_ADDRESS[0], NETMASK_ADDRESS[1] , NETMASK_ADDRESS[2], NETMASK_ADDRESS[3]); IP4_ADDR(&gw, GATEWAY_ADDRESS[0], GATEWAY_ADDRESS[1], GATEWAY_ADDRESS[2], GATEWAY_ADDRESS[3]); |
自定一下自己的问题,这个问题,没人知道怎么导致的嘛? |
自顶一下,这个问题,谁能帮我解决一下。 |
看起来生成代码时这个三个地址不见了。所以得劳烦楼主手动设置一下,自己定义几个宏或者直接用数字替换掉自动生成的代码里IP_ADDRESS[0]这几个数组了 |
卧槽,闷了我两天,刚刚调试才发现这个问题,网上搜搜就进入楼主的帖子了,你发现是什么原因了吗 |