java - 将 delayMicroseconds 函数添加到标准 firmata 以运行带处理的 Arduino

标签 java c arduino processing firmata

我正在使用标准的 firmata 与 Java Processing 交互并运行一个 arduino 项目。用于与 java 进行接口(interface)处理的 Arduino 类在 arduino 板上没有 delayMicroseconds 或任何其他延迟的方法。在大多数示例中,您需要在 java 环境中使用延迟技术,但这些都是以毫秒(1000 微秒)的数量级运行的。

所以我可以编辑 StandardFirmata 草图、Firmata.java 文件和 Arduino.java 文件,这些文件建立所有这些必要的连接以运行 Processing。有谁了解这段代码如何足够好地分解,以便我可以添加我自己的延迟函数,该函数可以传递到 arduino 类。我不明白这段代码如何在 C 和 Java 端之间进行交互。更好地理解这一点可能最有帮助。

如果您想查看引用代码,可以在以下位置找到: http://arduino.cc/en/reference/firmata#.UwfW_vldV0Y https://github.com/firmata/processing/tree/master/src

最佳答案

我没有使用过 firmata 界面,但以下一般用于处理草图,但只有毫秒分辨率(不是微秒):

    void myDelay(int ms)
    {
      try
      {    
        Thread.sleep(ms)
      }
      catch(Exception e) {
      }
    }

关于java - 将 delayMicroseconds 函数添加到标准 firmata 以运行带处理的 Arduino,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21946796/

相关文章:

java - 如何将项目从netbeans中的另一个类添加到列表框

c - 这种切换字符串的方式有效吗?有没有效率更高的?

c - Makefile 覆盖自身

java - 显示来自 run() 方法的对话框

java - 如何在通过Jsp访问的servlet中实现ServletContextListener

java - 显示 JCombobox 项目的完整字符串,其中组合框的宽度小于字符串

c++ - 如何在 Linux 架构上即时列出 C 代码中可用的所有函数/符号?

android - 发送十六进制代码到蓝牙

java - 为什么我的 Java 程序没有从 Arduino 获取串行信息?

c++ - Arduino 上的可变参数函数