Arduino Serial - 如何覆盖所有传入缓冲区以仅获取最新字符串

Arduino Serial - How to override all incoming buffer to get the latest string only

我正在使用 Serial.readString() 获取通过蓝牙从手机发送的数据。 当我在发送时间之间有一点延迟发送数据时,它工作正常。 但是当我以更快的延迟连续发送数据时,缓冲区会将所有内容存储为一个长字符串,然后 return 将该长字符串存储到 Serial.readString().

例如: 发送中

10

20

30

40

正在接收

10203040

我想接收与多个发送时间相对应的单独值。活动真快。

10

20

30

40

如果无法实现,我如何才能只获取最新值(覆盖缓冲区中的所有先前值)。在这种情况下是 40

Command = Serial.readStringUntil('\n');

请注意,\n 可以替换为任何指示您希望 readString 停止读取的字符。有关详细信息,请查看 Arduino Docs.