打开串行(COM)端口错误 - Windows 10

时间:2017-11-20 20:40:51

标签: c++ serial-port windows-10 bootcamp

我正在尝试打开一个串口,以便我可以使用下面的标准CreateFile()代码从设备接收Uart数据;

HANDLE hComm;                          // Handle to the Serial port
char  ComPortName[] = "COM4";  // Name of the Serial port(May Change) to be opened,

/*---------------------------------- Opening the Serial Port -------------------------------------------*/

hComm = CreateFile(ComPortName,                  // Name of the Port to be Opened
    GENERIC_READ | GENERIC_WRITE, // Read/Write Access
    0,                            // No Sharing, ports cant be shared
    NULL,                         // No Security
    OPEN_EXISTING,                // Open existing port only
    0,                            // Non Overlapped I/O
    NULL);                        // Null for Comm Devices

if (hComm == INVALID_HANDLE_VALUE)
    printf("\n    Error! - Port %s can't be opened\n", ComPortName);
else
    printf("\n    Port %s Opened\n ", ComPortName);

但每次返回无效句柄时。我有点害怕,但是我已经对此有了很好的了解,我看不出有什么理由?! 我试过" COM4:"正如另一篇文章中所建议的那样,"\\\\.\\COM4"(虽然我知道这应该仅对com端口10及以上版本有效),但仍然没有乐趣!这个端口绝对存在,因为我可以使用Teraterm和RealTerm连接和接收数据,并且它不是已经在使用的情况。

我在使用Boot Camp的Mac上使用Windows 10,并想知道这是否是一个问题?我在一个帖子中读到,如果窗口没有被正确激活,那就有问题,但是它有点模糊。

非常感谢任何建议,非常感谢。

0 个答案:

没有答案