问题标签 [parallel-port]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6249 浏览

c - gcc 编译器中的 outp() 对应项是什么?

在我的学校,我的项目是制作一个控制 LED 灯的简单程序

我的教授说 outp() 在 conio.h 中,我知道 conio.h 不是标准的。

outp() 的例子

提前致谢

0 投票
1 回答
4968 浏览

windows-7 - 在 Windows 7 上写入并行端口

我试图找出如何访问并行端口以在 Windows7 机器上写入一些位。此并行端口位于 PCI 卡上,由 Windows7 自动安装,可作为 LPT2 进行监控。分配给端口的地址是 E800-E807 和 E480-E487 。这在我看来像非物理地址。我已经尝试了不同的方法在端口上写入,例如使用http://www.logix4u.net/inpout32.htm中的 inpout32.dll或 parport.dll 作为 Java 解决方案。为了释放这些端口,我安装了 Userport,但我认为使用这个应用程序只能释放真正的物理端口。那么,我怎样才能将端口地址更改为例如 378,或者让我的应用程序使用 inpout32.dll 在虚拟地址上写入?

我已经尝试了一些 google-found-advices,例如在 BIOS 中禁用 378 地址,因此 PCI 卡使用它是“免费的”。或者就像在 LPT1、LPT2、LPT3 之间切换,但似乎没有任何效果。

编辑:也许有人知道这个 PCI 卡的特定驱动程序,所以我不需要使用默认驱动程序?它是: http: //www.delock.de/produkte/gruppen/IO+Karten/1x_Parallel_UND_2x_Seriell__-_PCI_Karte_89004.html

0 投票
0 回答
792 浏览

java - 从Java中的并行端口连续获取数据

对于我的一个与神经传导研究有关的项目,我需要从 Windows XP 中的并行打印机端口连续获取数据。模拟数据由模数转换器处理,然后提供给并行打印机端口。为了熟悉数据采集过程,我尝试从连接到 ADC 且频率设置为 50 Hz 的频率信号发生器采集数据。到目前为止,我已经能够使用 Java 从 PC 读取数据,但我担心我在某处犯了错误。

获取数据的问题是,例如,如果我获取前 500 个数据并绘制它,那么我会得到一个波形,但它不够平滑,表明数据以某种方式丢失或分散。我在这里给出了一个为 500data 绘制的示例数据的屏幕截图。希望有人可以在我犯错误的地方给我一些提示,并向我展示一些解决方法。提前致谢。

示例代码:

0 投票
2 回答
6682 浏览

vb.net - 将使用 inpout32.dll 的 Visual Basic 并行端口应用程序转换为 Delphi

我得到了这个简单的 VB 应用程序和库,我被告知可以打开连接到 0x378 基地址的打印机端口的门/转向样式。

但是我需要在 Delphi 5 中重新编写它以集成到我的应用程序中。

  1. 是否可以通过 D5 访问同一个库?
  2. 使用以下代码,我的方向是否正确?

//使用库的端口 I/O 的 Inp 和 Out 声明

我不确定如何声明库函数以及将变量声明为什么(&H378 显然不是整数)

谢谢

0 投票
1 回答
1190 浏览

ruby - Ruby 串行/并行端口操作

我想知道你们中的一些人是否正在通过 ruby​​ 中的串行或并行端口使用硬件/电路,而不是使用 arduino 或类似的东西,只是通过端口将接收脉冲发送到面包板?或者,如果有人知道有关该主题的有据可查的图书馆/宝石或一篇好的博客文章。

到目前为止,我发现这些关于“原始”端口操作的博客文章非常酷但很短。

http://blog.stevenocchipinti.com/2011/10/ruby-parallel-port-leds.html

这些库看起来不错,但没有很好的文档:
http ://rubygems.org/gems/serialport
https://github.com/hparra/ruby-serialport/

0 投票
2 回答
10112 浏览

python - python c扩展模块中没有返回值的方法

我正在尝试在 python 中创建一个通过并行端口发送数据的脚本。我正在用 C 语言创建自己的模块。

问题是:当我尝试执行我的模块时,python 崩溃了。没有错误,没有数据,什么都没有。它只是关闭。

这是我的模块:

(它可以在没有所有 python 混乱的情况下工作)我通过 distutils 编译它,然后在终端(使用 xubuntu)中,我输入:

在这里,它脱离了python,它输入了“markmb@...”

提前致谢!

0 投票
2 回答
3095 浏览

c# - C# - 读取并行端口状态(简单推送开关)

我正在用 C# 更新一些最初用 VC++ V1.0 for DOS6 编写的软件。

该软件的一个方面是检查并行端口,其中连接了一个简单的按钮开关。我目前不知道开关连接到哪两个引脚,但我有旧程序的源代码,其相关部分如下...

现在 _bios_printer(在 bios.h 中)显然在 C# 中对我不可用,但我正在努力寻找可以完成这项简单任务的替代方案。

_bios_printer 的信息在这里。我已经在 .Net 中对并行端口的读/写进行了大量搜索,但似乎没有任何东西可以为我提供端口状态。

此外,您能否从这段代码(以及它如何检查“状态”)中得出结论,两条开关线连接在 DB25 插头上的位置?

如果有人对此有帮助/建议,我将不胜感激。非常感谢

0 投票
2 回答
17186 浏览

linux - 在 Linux 上查找并行端口的内存地址

我正在尝试查找通过 PCI Express 卡连接到笔记本电脑的并行端口的基本(内存)地址。运行lspci -v显示我的计算机识别并行端口并提供 I/O 端口(1000 和 1008)但不提供内存地址(其他条目同时具有端口和内存位置……此卡​​是唯一没有内存地址的条目)。另外,当我查看时,/proc/ioports我得到了 lspci 中给出的相同端口。但是,当我尝试在我正在运行的程序(EMC2 控制步进电机)中使用这些地址中的任何一个时,它在该地址找不到并行端口。

如果有一个类似于 Windows 设备管理器 -> 端口 -> 资源的东西,那就太好了。有没有办法在 Ubuntu 中做到这一点?PCIe 设备是否有标准的内存位置?

编辑: 输出来自lspci -v

作为参考,另一个显示内存位置的条目:

0 投票
1 回答
4196 浏览

virtual - 使用 C++ 为 Windows 7 创建虚拟并行

我正在开发一个应用程序,它将 i/o 从设备 A的并行端口重定向到设备 B的并行端口。这两个设备通过以太网(LAN、WAN、互联网等)连接。

设备 A连接了一个物理并行端口,但设备 B是一台没有并行端口的机器。这就是让我在设备 B上模拟并行端口的原因,因此 Windows 认为它​​具有并行端口并以与硬件上的并行端口一起使用的方式与它一起工作,例如它自动检测设备何时连接到并行端口端口,以便可以安装该设备的驱动程序。

如果任何硬件连接到设备 A上的并行端口,则 i/o 将重定向到设备 B 上的并行端口,并且设备B上的 Windows认为某些硬件已连接到设备 B自己的并行端口,即 Windows 没有知道硬件实际连接在世界上的哪个位置;Windows 只是被愚弄认为硬件直接连接到设备 B

我的问题是关于仿真部分。我如何在 C++ 中为 Windows 7 编写一个并行端口仿真器,这样我就可以欺骗 Windows 以为它有一个真实/硬件并行端口?

一个相关的问题可能是 Windows 如何检测硬件并在其中发生变化,例如,当某些硬件连接到计算机的并行端口时。

程序流程如下。

  1. 从设备 A 的并行端口读取数据。
  2. 将该数据写入设备 A 的套接字,该套接字将其发送到设备 B 的套接字。
  3. 从设备 B 的套接字读取数据。
  4. 将该数据写入设备 B 的并行端口,这会使 Windows 认为某些硬件已连接到它。

注意:我只模拟并行端口,即仅并行到并行重定向。不允许使用设备 B上的其他端口。这是此应用程序的要求。

到目前为止,我所做的部分是我用 C++ 编写了一个程序,该程序分别从并行端口读取数据和向并行端口写入数据。

如果您知道通过以太网(LAN、WAN、互联网等)将并行端口重定向到并行端口的更好方法,也请告诉我。

0 投票
0 回答
4845 浏览

c# - 在 Windows 7 中写入并行端口

我需要在我的 C# 代码中通过并行端口输出 8 位数据。我正在使用 Windows7 Ultimate 并且有一块 Intel 945GCNL 主板,它有一个并行端口并配置为地址 0378-037F。端口初始化为内核(启动时所有引脚 D0-D7 为高电平)。即使使用下面给出的代码,我也无法写出数据。

我尝试使用 codeproject 提供的此代码,尽管该程序没有产生任何错误,但我无法观察到任何输出。我什至在 system32 文件夹中安装了 inpout32.dll。下面给出了将十六进制值输出到并行端口的代码部分。

所有数据引脚都保持高电平,无法控制它们。请帮忙。