我正在与使用 Mbed 和 LPCXpresso11U68 板的人合作。
我对这个特殊的板子不是很熟悉,但它上面有两个 USB 连接器,一个用于 OpenSDA-ish 调试器,第二个是直接连接到 CPU。我可以将这两个端口都连接到我的 PC 上,并将终端仿真器连接到每个端口,两个端口都显示输出(板上运行了一个小型安装程序)。设备管理器显示一个端口(COM51)正在使用“mbed Serial Port”驱动程序,而另一个端口(COM52)正在使用“Mbed Virtual Serial Port”。到目前为止一切顺利......
板上有一个复位按钮。如果我按下该按钮,使用 Mbed 虚拟串行端口驱动程序(在我的情况下为 COM52)连接到 PC 的端口将停止运行。另一个端口(COM51)只是干净地重新启动。
我遇到的问题是,在我退出终端程序后(注意 TeraTerm 和 uCon 都会发生这种情况),如果我尝试重新连接到该端口,它不在可用的端口列表中。奇怪的是,它仍然存在于设备管理器中。
我发现可以解决此问题的唯一方法是拔下/插入该 USB 电缆(COM52)或向 COM51 发出 BREAK 条件(AFAIK 重置板)。
我是 uCon 的作者,我希望能够检测到这一点(我可以),并且能够在没有任何其他手动干预的情况下重新启动 comport 连接。
最后一点:显然这不是特定于 LPCXpresso11U68 板的;我猜这是 Mbed 虚拟串行端口驱动程序的一些问题。
任何人都知道这里可能发生了什么?