java - 使用 GraphView 和 Arduino 的 Android 蓝牙

标签 java android bluetooth arduino signal-processing

我目前有一个实时图表(Android GraphView),可以从我的arduino模拟传感器顺利运行到蓝牙模块,然后使用以下代码在Android上进行流式传输。我想知道是否有人可以为我指出正确的方向来创建一个函数,该函数接收此函数中返回的 double 并计算每 5 个值的平均值以返回它。该流每 20 毫秒从 arduino 发送一个新的 double 据。我尝试添加一个带有计数器的循环,将每 5 个值存储在一个数组中,并将总和除以 5,但它不会实时重复。

public static double read() throws IOException
 {
      byte[] buffer = new byte[1024];
      dataInStream = new DataInputStream(mmInStream);
      Scanner scanner = new Scanner(dataInStream);
      double s = scanner.nextDouble();
      }
      return s;
  }

最佳答案

尝试在double之前或者static之前添加synchronized。像这样 公共(public)静态同步双读()抛出IOException... 希望它对你有用

关于java - 使用 GraphView 和 Arduino 的 Android 蓝牙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14960387/

相关文章:

java - Android Wear 与手机通信

使用 pybluez 进行 python 蓝牙发现

c++ - C++中的蓝牙

android启动蓝牙sco不在 Lollipop 中路由麦克风

java - Apache POI 编号列表

java - 为什么 HashMap 使用 TreeNode 作为非 Comparable 键?

java - 双重检查锁定延迟初始化 - 我是否需要为 Map 使用 volatile 关键字

android - 如何修复 InputManagerImpl 中的内存泄漏

android - Gradle Espresso的退出值非零2

java - 如何通过在布局中使用更多 ListView 来克服这个问题