关于DigiSpark(arduino)键盘库

时间:2015-06-29 23:56:12

标签: c++ arduino

我需要根据下面解释的行为重写DigiKeyboard(reference) sendKeyStroke(byte keyStroke)

  1. 原来的行为是轮询USB并检查KeyStroke,如果它检测到任何数据,它会通过USB发送笔划,计算机只需单击即可注册。这种实现的问题是我不能保持输入(生成KeyStroke)并且具有由PC读取的恒定/持久信号。它的工作方式是它在每个循环中轮询并在每次迭代时发送一个笔划
  2. 每当输入被按下时,我需要的是一个单一且持久的信号而不是每秒多个信号。
  3. 我所知道的是Arduino Leonardo使用Keyboard.press(byte)方法实现了这一点。我找不到使用DigiSpark库重写它的实现,但我相信它应该是可能的,因为它有一个原生的键盘API。

    基本上,我认为最佳方案会有一个阻塞功能,通过USB发送一个持久性信号,可以用于引脚中断(这可能还是阻塞行为会阻止中断?)而我做其他事情主循环和其他中断。

    无论如何我可以重写DigiSpark的sendKeyStroke(byte)甚至使用Leonardo的库来创建我需要的行为吗?

0 个答案:

没有答案