ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
808812 Топик полностью
Evgeniy1294 (11.01.2018 15:15 - 15:17, просмотров: 668) ответил Sylvan на OMG! Оно заработало. Это значит, в функции low_level_init() уже есть NETIF_FLAG_LINK_UP, но оно выполняется только в том случае когда кабель был воткнут во время инициализации. А если это не так, то NETIF_FLAG_LINK_UP уже никогда не присваивался.
Я делаю так. При инициализации lwip сразу ставлю флаги netif->flags |= NETIF_FLAG_UP|NETIF_FLAG_LINK_UP; А сразу после инициализации провожу первичную проверку. Флаги NETIF_FLAG_UP и NETIF_FLAG_LINK_UP важны для инициализации lwip, без их установки инициализация у меня проходила криво. // Первичная проверка линка reg = PHY_REG_READ(PHY_ADR, PHY_REG_BSR); if (reg & PHY_BSR_LU) { netif->flags |= NETIF_FLAG_LINK_UP|NETIF_FLAG_UP; } else { netif->flags &= ~(NETIF_FLAG_LINK_UP|NETIF_FLAG_UP); }