繁体   English   中英

如何从C ++设置和读取并行端口上的引脚?

[英]How to set and read pins on the parallel port from C++?

我正在帮助一个朋友完成最后一个项目,在这个项目中他拥有我们想要使用C ++程序打开和关闭的电路。

我想要的图像

我最初以为这很容易,但是我没有实现该程序。 主要的问题是

  • Windows XP及更高版本不允许直接访问硬件,因此某些网站建议我需要编写驱动程序或查找驱动程序。
  • 我也在线查看了一些项目,但它们似乎适用于Windows XP,但不适用于Windows 7。
  • 另外,大多数项目都是用VB或C#编写的,我对此并不熟悉。

题:

  • 是否有适用于Windows XP和Windows 7的驱动程序?如果是,如何在我的代码中使用它? (代码段不胜感激)
  • 是否有跨平台的方式来处理与并行端口的通信?

您不需要编写驱动程序或任何东西-您只需使用诸如"LPT1"类的文件名调用CreateFile即可打开并行端口的句柄,然后可以使用WriteFile向其中写入数据。 例如:

HANDLE parallelPort = CreateFile("LPT1", GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
if(parallelPort == INVALID_HANDLE_VALUE)
{
    // handle error
}
...
// Write the string "foobar" (and its null terminator) to the parallel port.
// Error checking omitted for expository purposes.
const char *data = "foobar";
WriteFile(parallelPort, data, strlen(data)+1, NULL, NULL);
...
CloseHandle(parallelPort);

看看codeproject: 这里这里这里 您会发现宝藏。

第一个链接适用于Windows 7-32位和64位。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM