与外部(硬件)按钮通信

时间:2011-06-25 19:55:28

标签: language-agnostic peripherals

我想创建一个外部按钮,用于我的一个应用程序。我的问题不是关注硬件本身(这就是为什么我在这里问它),而是在软件/通信方面。什么是最好和最直接的方式?良好的速度很重要,因此它与普通键盘的延迟差别不大。

我想到了以下解决方案:

  • 让硬件成为修改过的键盘,或者至少它应被系统识别为键盘。亲:无需软件方面的额外工作。 Con:如果我还需要使用普通键盘怎么办?好吧,还不错,今天的USB键盘......
  • 通过串口进行通信。这将是最直接的方法,或者更好的是,它将像10年前一样。现在大多数计算机都没有,当然,周围有很多串口USB转换器。
  • 让它成为标准的USB设备。我不喜欢这个想法,安装驱动程序,不得不关心不同的操作系统等。

你有什么更好的想法吗?

1 个答案:

答案 0 :(得分:1)

USB键盘类HID对我来说似乎是最好的。您可以使用与标准键盘不同的扫描码,或者使用较少的扫描码,例如某些键盘上用于特定应用按钮的扫描码。 (请注意,当前的X.Org驱动程序仍限于扫描码<256。)

也许为您的设备找到参考HID键盘实现并不困难。

串行端口在现代PC,尤其是笔记本电脑中很少见;即使系统板有RS232电路,它也没有外部连接器。

为PC端编写自定义驱动程序意味着更多的工作和更多的空间来容纳错误。使用久经考验的标准驱动程序,你会更安全。