コード例 #1
0
 private void sendData(byte[] data) {
   int maxShieldFrameBytes = (MAX_OUTPUT_BYTES - 3) / 2;
   ArrayList<byte[]> subArrays = new ArrayList<>();
   for (int i = 0; i < data.length; i += maxShieldFrameBytes) {
     byte[] subArray =
         (i + maxShieldFrameBytes > data.length)
             ? ArrayUtils.copyOfRange(data, i, data.length)
             : ArrayUtils.copyOfRange(data, i, i + maxShieldFrameBytes);
     subArrays.add(subArray);
   }
   synchronized (sendingDataLock) {
     for (byte[] sub : subArrays) sysex(SERIAL_DATA, sub);
   }
 }