代码之家  ›  专栏  ›  技术社区  ›  mgibson

增强串行通信,COM端口被拒绝,错误为“打开:访问被拒绝”

  •  0
  • mgibson  · 技术社区  · 13 年前

    我有一个简单的程序,Boost库,构建和链接等。

    当我运行下面的代码时,我得到一个错误,上面写着“打开:访问被拒绝”。我知道这很可能意味着港口已经开放,因此无法使用。然而,我可以在C#和另一个C++程序中非常容易地访问COM端口,但我不知道如何在Boost中实现这一点,我的搜索效率也不高。

    void main()
    {
    try 
    {       
        SerialSimple ss("COM12", 115200);       
        //ss.writeString("hi");
    }
    catch (exception& e)
    {
        cout << "Standard exception: " << e.what() << endl;
    }
    
    _getch();
    }
    

    干杯

    2 回复  |  直到 13 年前
        1
  •  0
  •   user195488 user195488    13 年前

    问题可能是,您试图为每次读取打开同一个端口,而不在单独的实例(C#或此程序)中关闭它。

        2
  •  0
  •   mgibson    13 年前

    通过断开连接然后重新启动来解决问题-我使用Tera Term。尽管我不知道是怎么打开的,但当我试图给它写信时,它一定是被其他东西打开的。