【发布时间】:2010-11-05 10:01:54
【问题描述】:
我在 Visual Studio 上使用 c++ 连接到任何串行端口(想与 Arduino 交换)时遇到问题。
我正在使用 Arduino 操场上提供的 SerialClass,但无法打开我的端口的句柄。每次尝试都会抛出 ERROR_FILE_NOT_FOUND ..
我一直在测试许多其他表示端口的方法:
"COM1"
"COM1:"
"\\.\COM1"
但没有任何效果。
该端口在系统上可用,并且使用 Putty 或 Arduino IDE 可以正常工作。此外,它不会被其他进程阻止。
我使用的是 Windows 7 x64,但项目是 Win32。
类是用
构造的serialPort = new Serial((char*)port);
错误字符串显示正确的端口名。
我做错了什么?
也无法打开文件。
【问题讨论】:
-
您可能还希望扩展该类,以便在修复错误后能够修改端口设置。它目前没有办法以编程方式配置端口,并且所有设置都是硬编码的。读取/发送的数据可能不会 mesh 与您尝试连接的 w/e。这也是一个很好的例子(来自 MS 的正确),关于如何利用他们的 .NET 框架,该框架具有直接可用的串行端口类。 msdn.microsoft.com/en-us/library/…
-
如果您正在寻找替代方案但仍在使用 c++,您可以尝试
Qt并使用开源的QextSerialPort库。我使用它取得了一些非常好的成功,而且它的学习曲线非常小,考虑到大多数示例都很容易实现您想要完成的目标。
标签: c++ windows visual-c++ serial-port