【问题标题】:Interacting with low level device from VB与 VB 中的低级设备交互
【发布时间】:2012-08-16 20:21:03
【问题描述】:

我的一个朋友想编写一个与嵌入式设备交互的 VB 应用程序。这是系统的基本概要 -

用户将硬币放入插槽(与任何街机或自动售货机一样)。

这会触发 VB 应用程序运行。

这就是我对这个应用程序的了解,它与我无关,我只是被问到它是如何工作的。我告诉他你投币机会在插入硬币时发出信号,他会使用套接字或打开嵌入式设备的管道来监听这些信号......我想这就是它的工作原理吗?

我还告诉他,投币机并不像他想象的那么简单,因为你需要考虑所有用例......你不仅仅是“听投币”,你必须处理像硬币价值这样的情况,在系统已经运行时输入另一个硬币,等等......

  • 那么投币机和 VB 应用程序将如何交互...管道/套接字?
  • 有没有可能在某处购买这种投币机之类的设备?
  • 让这样的设备与 VB 交互是否简单? IE。是否有此类库,或者您是否需要自定义编写设备本身的代码和用于侦听来自它的信号的 VB 代码?

【问题讨论】:

  • 为了回答这个问题,您必须告诉我们嵌入式设备支持哪些硬件接口。
  • 我不知道。一个对嵌入式设备一无所知的人问我这个问题,他懂一点 VB 就是这样。个人电脑汇编语言我学过不少,但对嵌入式设备知之甚少。

标签: vb.net assembly embedded


【解决方案1】:

这完全取决于设备的连接方式,但您需要在应用程序和设备的低级 IO 之间安装一个驱动程序。

按一两个按钮的最简单方法是使用标准的 USB 转串口转换器。你可以在网上以大约 1 美元的价格买到这些。 RS232 端口具有用于“环形指示器”之类的状态线。当开关短接正确的引脚时,您可以检测应用程序中的串行端口状态。这是做你想做的事的廉价方式。

如果您需要更高级的东西,请深入研究 USB HID。您可以轻松program with HID devices from .NET

【讨论】:

  • 假设投币式硬件有一个串行接口,它可能有也可能没有。
  • @EricJ.,不,它根本不假设这一点。请重新阅读我的答案。我不建议通过数据引脚进行实际通信……我只是在谈论控制状态线。另请参阅:old.nabble.com/Serial-port-switch-td15996615.html 将任何硬币开关连接到状态行并对其进行监控非常容易。不需要额外的硬件或真正的通信。
  • 那么投币机是否已经预编码并准备好从投币输入发射信号?如果它是预编码的,那么您正在谈论的驱动程序是基于 C 的包装器,它接收输出的信号并发送到套接字/管道?这样VB可以接他们吗?
  • 是否可以实际购买其中一种设备,或者它们是否仅内置于自动售货机等完整系统中?
  • @Jim_CS,不,如果您购买的是带有 PC 接口的投币机,它将决定通信的工作方式。 (可能是 HID,但并非总是如此!)我建议您将投币机的输出引脚连接到继电器,以通过串行端口向您的计算机发送信号……AKA,制作您自己的通用 PC 接口。是的,如果您想购买,它们确实存在。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-31
相关资源
最近更新 更多