问题标签 [hardware-interface]

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 投票
6 回答
2065 浏览

image-processing - LabVIEW 是否有虚拟/虚拟 IMAQ 相机?

我正在编写从兼容 IMAQ 的 GigE 相机中获取图像的 LabVIEW 软件。

问题:这是一个协作项目,所以我只能间歇性地访问实际的相机。即使相机不存在,我也希望能够继续开发这个软件。

是否有一种简单/快速的方法可以在软件中创建虚拟或虚拟 IMAQ 相机?理想情况下,我希望虚拟相机从 AVI 或一堆 JPEG 中抓取帧。这样的东西一定存在,我只是在谷歌上找不到。

我正在寻找不需要很长时间(例如< 2小时的工作)并且通过标准LabVIEW IMAQ接口抽象出来的东西,这样我的软件就不会知道或关心它是否处理虚拟相机或一个真正的相机。

0 投票
2 回答
57 浏览

javascript - 运行三个桌面环境的最简单方法

我希望这个问题仍然属于堆栈溢出交换的范围。

我需要尽可能简单且便宜地在三个不同的显示器上运行三个 Web 应用程序。每个显示器都会有一个用户在网络应用程序上输入数字信息。

该网络应用程序是一个非常轻量级的简单 html、css 和 javascript 事务。

我提出的选项包括:

1)为每位用户配备一台电脑、显示器、鼠标和数字键盘——价格昂贵。

2)平板电脑(非电阻式安卓——太难使用)——也很贵。

3)桌面虚拟化 - 找不到简单的解决方案。

谁能帮我解决另一个问题?

更多信息:

用户正在通过 wifi 访问本地服务器。此外,该解决方案需要在周一至周五运行 8-5。

0 投票
2 回答
66 浏览

operating-system - 硬件支持的操作系统功能

我想知道主要硬件支持的操作系统(通用)功能或其类别。有没有可以参考的链接或参考资料?

0 投票
1 回答
253 浏览

shell - 你能在 Solaris 7 unix 中建立一个远程连接,看起来是本地的吗?

我正在支架上运行硬件测试,在 Solaris 7 SPARC 机器上运行 GUI 模拟。

我无法远程打开测试设备的电源,因为模拟代码会检查您是否在本地。我无法更改测试台代码,因为我无权访问它,即使我可以这样做,我也必须花费数十万美元重新认证它。重新认证不是一种选择。这只是一个麻烦,会让我更有效率。

那么有没有办法让主人认为你是本地人但你真的很远程?

我正在使用 telnet 和 Windows 中的 x 服务器远程访问该框。

我无法使用 SSH。

0 投票
1 回答
742 浏览

linux - Linux守护进程改变用户输入流?

我想编写一个程序来重新映射用户输入,例如更改键盘布局,以及更复杂的事情,例如制作速记程序(即“t qk fx jmps ovr t lzy dg”输出为“快速狐狸跳过懒狗”)。我更愿意在 X 级别或更低级别执行此操作。

我可以根据实际用户输出制作某种虚拟键盘吗?理想情况下,我想要某种简单的界面(即程序的标准输入是一系列真实的用户输入事件,输出是虚拟键盘的用户输入事件),但如果这不可能,我仍然会感兴趣指向如何做到这一点的指针。我现在对 Linux 硬件设备、低级 X 东西或内核一无所知。事实上,我对 Linux 还很陌生。“基础”教程的链接不会不受欢迎。

0 投票
2 回答
2888 浏览

c# - 通过 USB 连接的模拟设备

我有一个设备和这个设备的驱动程序。我想做的是构建一个模拟 USB 设备以与第三方应用程序通信的应用程序。

更具体地说,我正在尝试构建一个可以模拟模仿 Microsoft Zune 的 USB 设备的应用程序。我想这样做,以便我的应用程序可以注册为 zune 设备,然后与客户端通信。我在我的应用程序中添加了几个 DLL,以尝试确定告诉软件连接的设备是合法 zune 的调用,但到目前为止我还没有多少运气。

我是这种类型的开发新手——模仿硬件设备,我在导入用 C/C++ 编写的 dll 方面不是很有经验。我正在使用 Visual Studio 2010 (.net 4.0) 来开发我的应用程序,如果有人可以为我提供模仿硬件的任何帮助,我将不胜感激。我确实有设备驱动程序,Visual Studio 拒绝直接引用。我还有一个实际的物理设备,所以我可以看到它在设备管理器中使用的驱动程序是什么。

目标如下

  1. 应用程序将自己注册为 USB 设备,以类似于虚拟克隆驱动器模仿 DVD 播放器的方式模仿 Microsoft Zune。
  2. 应用程序被 zune 客户端识别为有效的 microsoft zune。
  3. Zune 软件与应用程序一起工作,就像它与硬件设备一样(同步等)
0 投票
3 回答
3345 浏览

linux - 有没有办法检查处理器缓存最近是否被刷新?

在 i386 linux 上。如果可能的话,最好在 c/(c/posix std libs)/proc 中。如果没有,是否有任何组件或第三方库可以做到这一点?

编辑:我正在尝试开发测试内核模块是否清除缓存行或整个处理器(使用 wbinvd())。程序以 root 身份运行,但如果可能,我更愿意留在用户空间。

0 投票
2 回答
2670 浏览

android - 如何在android中检测外部设备

我想编写一个程序来检测我的安卓手机连接的任何外部设备。例如,如果我连接到计算机以通过 USB 大容量存储进行共享,或者如果我连接以进行充电。

android中哪个API或包负责硬件接口。如果连接到我的安卓手机,我如何检测任何外部设备。

0 投票
2 回答
1037 浏览

.net - WriteFile 失败取决于要写入的数据长度?

编辑

奇怪的是,我已经解决了这个问题,但它仍然让我很烦。我通过发送太长的写入来解决它,并填充零;该代码有效,但发送了几百个不必要的字节。具体来说,我需要准确发送 992 字节的数据包,而不是 7 或 19 字节的数据包。但是,我的问题仍然存在,为什么 Logitech 代码能够进行 7 或 19 字节的写入,而我却不能。


我遇到了一个问题,即特定代码块失败或成功显然取决于传递给它的数据的长度。这对我来说毫无意义;我显然做错了什么,但我不知道是什么。

我在三种情况下尝试使用以下代码块,它将字节流写入 USB 设备(两个罗技 G 系列键盘之一):

在第一种情况下,我传递了一个 992 字节的流并且写入成功完成。在第二种和第三种情况下,我正在写入 7 个或 19 个字节,WriteFile 生成 7 个字节的错误 ERROR_INVALID_USER_BUFFER 或 19 个字节的 ERROR_INVALID_PARAMETER。我已经打开了读写手柄,不重叠。

使用 USBTrace 时,我可以看到默认的 Logitech 程序可以毫无问题地编写所有三种情况,但我自己的代码只能编写 992 字节的情况。无论我将代码编译为 x86 还是 x64,此行为都是相同的。

我用来打开句柄的代码是这样的:

调用 WriteData() 的确切代码块如下:

这些特定命令用于将板上的宏(“G”)键重新映射到不同的字符代码,在这种情况下,00 禁用该键。任何拥有 G15/G19/G510 键盘的人都可以通过禁用罗技游戏面板软件并重新插入键盘来看到这一点。G3 将像记事本中的 F3 一样(查找下一个),但重新启动游戏面板软件后将不再这样做。

0 投票
3 回答
1710 浏览

android - 在 Android 中为 pH 测试仪读取毫伏

我正在为我的 Android 手机制作一个 pH 测试仪。我找到了一个 pH 电极,它会发送一个毫伏信号,然后我可以用它来转换成一个 pH 读数(59.2 mV/pH 单位 @ 25° C)。我遇到的问题是是否可以将电极连接到耳机插孔并直接读取毫伏读数,或者我是否需要先将模拟信号转换为数字信号然后通过 USB 插入?我不是一个大电子人,但我正在做这个项目并希望从中学习。

我在想也许可以使用 GetMaxAmplitude 函数从耳机插孔获取 mV 读数,例如来自这里的线程:GetMaxAmplitude 的值范围。虽然,据我了解,此功能可能的最低读数为 0,并且在测试 pH 值时可以读取负 mV 值。

非常感谢任何帮助,谢谢!