0

简而言之,当一个即插即用的设备连接到一台机器上时,系统是如何实现它已经连接的呢?

基本上是否存在无限循环不断寻找设备?像这样的东西:

std::vector<string> device_array; //ID's of all connected devices
main(){
    while(true){
        SetDevices();
        //Do whatever with the connected devices.
    }
}

void SetDevices(){
    int n = RS232_PollComport(cport_nr, buf, 4095); //get all connected devices

    //Add or remove devices from device_array list 
}

我只是以 USB 为例,我知道它不会对连接的设备使用 IRQ,但轮询似乎也不正确。所有其他 P&P 详细信息似乎都可用,但我找不到它如何知道设备已连接(或已断开连接)的逻辑。

可能没关系,但是...我的任务是创建一堆即插即用传感器,这些传感器将连接到 RaspberryPi 并使用标准 RX/TX 通信通过 rs232 连接与 P&P 设备的 pic16 通信。我正在接管的当前代码是通过不断轮询编写的,并且希望在继续之前确保没有更好的方法。

提前谢谢。

4

0 回答 0