串口不在Surface Book上工作

时间:2016-10-03 00:12:25

标签: serial-port usb hardware

我有一个Microsoft Surface Book,我已经启动了双启动Linux Mint。我正在编写一个需要从串口读取数据的程序,但我的串口似乎无法正常工作。整个Mint和Windows的行为是一致的(通过Cygwin完成的测试)。它在设备插入的前2-5秒内获得了一些数据(通过屏幕查看数据,如果我只是使用pyserial打印从串口传入的数据,则会发生同样的事情),然后什么都没有。

可能会发生什么?我认为我已将问题隔离到串口 - Surface Book有2个USB端口,两者都发生了相同的事情,我已经测试了我插入的硬件在另外两台计算机上(一台Linux和一台Mac OS),它可以正常工作。

4 个答案:

答案 0 :(得分:1)

您的MS Surface似乎有一个黄色的三角形感叹号图标(在适配器图标上方),无需安装/下载任何驱动程序。设备状态框窗口中的属性会显示This device cannot start. (Code 10)A device which does not exist was specified。正确?

如果是这样,您应该等待MS的更新。这是臭名昭着的问题。

答案 1 :(得分:1)

几个月之后,我最终将保修期内的计算机更换为无关的问题,您知道,在新计算机上,串口工作正常。这对我来说是一种硬件问题,因为这个问题在整个操作系统中都存在。

答案 2 :(得分:0)

也许这会有所帮助:

请参阅串口通信的Arduino示例 - 搜索谷歌:

  • arduino serial c ++
  • arduino serial c#
  • arduino serial c ++ linux

重点是正确打开端口需要打开文件,而不是端口。不是通常的c - 程序集写入端口代码。

另一种选择是你使用假意PL2303芯片无意间购买假USB转串口线 那么你需要安装旧版本的驱动程序。 在谷歌搜索:

假PL2303 +您的操作系统名称:

安装驱动程序Fake PL2303 windows 10

另一种选择是节省能量并关闭端口,因为它感觉它未被使用。

Windows中的

>设备管理器,>设备的属性 - 通常是USB根集线器>电源管理 - 允许计算机关闭此设备以节省电量 - 取消选中它。

https://superuser.com/questions/408683/why-my-usb-mouse-gets-suspended-after-3-seconds-of-inactivity

https://blogs.msdn.microsoft.com/usbcoreblog/2013/11/08/help-after-installing-windows-8-1-my-usb-device-doesnt-charge-or-it-disconnects-and-reconnects-frequently/

另外,您可以查看Windows事件 - 看看会发生什么。通常,这样的故障会在事件日志中注册。

一个不太可能的选择是消耗太多电流,如短路。并且器件保护电路关闭芯片。也可能它没有这样的电路。一种可能性是尝试使用外部供电集线器。

最可能的是省电机制

答案 3 :(得分:0)

我遇到了同样的问题 - 在另一个网站上遇到了解决方案。 Surface Book上的USB 3端口与Com Port的某些功能或其他功能不兼容,但通过便宜的USB集线器运行设备可以立即解决我的问题并立即被Arduino IDE识别