質問編集履歴
3
test
CHANGED
File without changes
|
test
CHANGED
@@ -284,7 +284,7 @@
|
|
284
284
|
|
285
285
|
Serial.print((int)hoge);
|
286
286
|
|
287
|
-
Serial.println("bytes sen
|
287
|
+
Serial.println("bytes sent");
|
288
288
|
|
289
289
|
```
|
290
290
|
|
@@ -294,7 +294,7 @@
|
|
294
294
|
|
295
295
|
sendTime: 93µs
|
296
296
|
|
297
|
-
6bytes sen
|
297
|
+
6bytes sent
|
298
298
|
|
299
299
|
```
|
300
300
|
|
2
返信内容の追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -261,3 +261,41 @@
|
|
261
261
|
となっており,こちらはread()が-1を返す(バッファの読み込みが終わる)まで待機するような実装になっていました.
|
262
262
|
|
263
263
|
JavaのOutputStream.flush()の様な強制的に書き込むようなメソッドがあればよかったのですが…
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
追記です.
|
268
|
+
|
269
|
+
ESP32側で以下のように送ったバイト数と送信にかかった時間を計測しました.
|
270
|
+
|
271
|
+
```Arduino
|
272
|
+
|
273
|
+
unsigned long Start = micros();
|
274
|
+
|
275
|
+
size_t hoge = SerialBT.write(ReplyBuffer2, sizeof(ReplyBuffer2) / sizeof(uint8_t));
|
276
|
+
|
277
|
+
unsigned long Stop = micros();
|
278
|
+
|
279
|
+
Serial.print(" sendTime: ");
|
280
|
+
|
281
|
+
Serial.print(Stop - Start);
|
282
|
+
|
283
|
+
Serial.println(F("µs"));
|
284
|
+
|
285
|
+
Serial.print((int)hoge);
|
286
|
+
|
287
|
+
Serial.println("bytes sended");
|
288
|
+
|
289
|
+
```
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
```SerialMonitor
|
294
|
+
|
295
|
+
sendTime: 93µs
|
296
|
+
|
297
|
+
6bytes sended
|
298
|
+
|
299
|
+
```
|
300
|
+
|
301
|
+
送信に約0.1ms程度しかかかっていないため,ESP32側の送信は即座に行われているように見えます.
|
1
返信の内容を追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -233,3 +233,31 @@
|
|
233
233
|
Unity 2019.4.6f1
|
234
234
|
|
235
235
|
ESP32 Arduino Core 1.0.4
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
### 追記(2020/9/16)
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
Arduino(ESP32)側でflushしてみましたが変化はありませんでした.
|
244
|
+
|
245
|
+
ArduinoのSerial.flushは送信シリアルデータの送信が完了するのを待つという仕様になっているようです.ESP32のBluetoothSerial.flush()の実装を見ると,
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
```C++
|
250
|
+
|
251
|
+
void BluetoothSerial::flush()
|
252
|
+
|
253
|
+
{
|
254
|
+
|
255
|
+
while(read() >= 0){}
|
256
|
+
|
257
|
+
}
|
258
|
+
|
259
|
+
```
|
260
|
+
|
261
|
+
となっており,こちらはread()が-1を返す(バッファの読み込みが終わる)まで待機するような実装になっていました.
|
262
|
+
|
263
|
+
JavaのOutputStream.flush()の様な強制的に書き込むようなメソッドがあればよかったのですが…
|