linux检测U盘,网络是连接
在带界面的嵌入式系统仪器中,设备基本支持网口,对于网络的拔插需要做检测并实时显示更新图标等。 之前试过qt自带的类,使用信号槽的方式监测网线的拔插,后来发现无效,未深究原因,后来就想着使用如下函数监测是否插入网线,并使用定时器不断定时监测更新(这样操作可能消耗一些cpu)。
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
FILE *file;
int detect_lwip()
{
// file= fopen("/sys/class/net/ens33/carrier","r");//PC
file= fopen("/sys/class/net/end0/carrier","r");//ARM
if (file == NULL)
{
perror("Error opening file");
return 1;
}
char buffer[4096];
size_t bytes_read;
while ((bytes_read = fread(buffer, 1, sizeof(buffer), file)) > 0)
{