我正在使用支持mbed的板进行开发,我需要在其上运行以太网应用程序。
我尝试使用以下代码创建连接:
`network = new EthernetInterface();
network->connect();
// Show the network address
const char *ip = network->get_ip_address();
printf("IP address is: %s\n", ip ? ip : "No IP");`
通常它应该工作,但是在LWIPInteraface类的
osSemaphoreAcquire 的调用API中失败,返回超时错误。
if (!netif_is_link_up(&netif)) {
if (blocking){
if (osSemaphoreAcquire(linked, 15000) != osOK){
if (ppp){
(void) ppp_lwip_disconnect(hw);
}
return NSAPI_ERROR_NO_CONNECTION;
}
}
}
为什么我可能会从 osSemaphoreAcquire 超时? 我也尝试增加超时时间,但是徒劳无功。 如果有人可以帮助我,将不胜感激。 预先感谢。