0

串行库上是否有更详细的信息?我问的原因是我收到的串行数据被切成看似随机大小的块。我知道它是相当连续的,但也许小的时间延迟会导致接收数据事件被多次触发。我正在使用异步流。是否有一种方法可以在启动另一个流之前允许异步流中的时间延迟?或者也许它只是蓝牙的一个功能,它以数据包的形式发送数据????如果必须,我可能会使用计时器而不是 asyncstreams 并将数据堆积起来,但如果我不必这样做,我宁愿不这样做。我收到的数据看起来确实正确,如果它全部合并回一个流。

4

1 回答 1

0

常规模式下的 AsyncStreams 只是在数据可用时传输数据。由于数据由串行设备缓冲,因此您有责任正确拆分和合并消息。

如果您对双方都有控制权,那么您可以在前缀模式下使用 AsyncStreams。在这种模式下,AsyncStreams 负责在内部拆分和合并消息,这大大简化了您的工作。有关更多信息,请参阅此链接

于 2011-10-12T07:52:55.453 回答