admin 管理员组

文章数量: 1184232

windows系统下,打开COM10及以上的串口,居然遇到找不到硬件资源的错误,但是同样的代码打开COM1-COM9是没有任何问题的。
用CreateFile()打开串口,如果串口号大于9,会返回INVALID_HANDLE_VALUE错误。

原来打开10以上的COM口,传参数是有讲究的。

HANDLE hCom = CreateFile("\\\\.\\COM10", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);

串口号应修改为"\\\\.\\COM10", 这样的问题在linux系统是没有的。



本文标签: 串口 Windows