不要等待arduino回复

时间:2011-12-30 09:45:52

标签: c# c arduino unity3d guitar

我正在使用Arduino和一把真正的吉他创造出一种吉他英雄般的游戏。

我的问题是我必须经常检查arduino的返回值。

如果我不断发送一个值,我的读数就不再准确了,如果我为Arduino写代码的方式是它只接收来自我吉他的输入数据,那么统一程序会冻结到期因为它似乎一直在等待响应而陷入Arduino代码。有没有办法可以解决这个问题?

1 个答案:

答案 0 :(得分:0)

我理解你的基本问题是:

  问:我想将我的Arduino连接到运行于的C#应用​​程序   视窗。

答:有两种方法可以做到:

  • 轮询

  • 事件

轮询不好:)

正确的方法是尽可能使用事件。

假设您可以使用C#串行接口,那么您可以将事件分配给DataReceived。

这篇文章准确地讨论了:

http://www.johnciacia.com/2010/06/03/interacting-with-the-arduino-with-c/

寻找:

serialPort1.DataReceived += 
  new System.IO.Ports.SerialDataReceivedEventHandler(serialPort1_DataReceived);

这是另一个链接:看起来像“Scrobby4”发布了一些示例代码:

http://forum.unity3d.com/threads/14731-COM1-and-events