在c#中通过串口读取整个字符串

本文关键字:读取 字符串 串口 | 更新日期: 2023-09-27 17:50:18

大家好

我试图读取由串行端口发送的字符串,我首先使用readline()函数,但由于字符串有多行,我必须循环,我如何判断我达到了字符串的末尾,或者是否有一种方法我可以使用其他readline读取整个字符串,而不依赖于新行。

Thank you

Jp

在c#中通过串口读取整个字符串

除了在网络上使用协议之外,没有什么神奇的方法。

如果您是从另一个端点发送的,则需要在字符串的末尾添加一些内容,以告诉接收端点所有内容都已发送。

如果您没有开发另一个终点,您需要询问制造商/开发人员如何确定字符串的结束。

标记串行消息的开始和结束的一种非常标准的方法是使用ASCII字符STX/ETX (ASCII表中的0x2和0x3)

ETA:这不是一个好主意,因为您不知道何时到达字符串的末尾。

我不知道串口方面,但假设你有一个流和所有的数据是可用的,你可以把它包装在一个StreamReader和调用ReadToEnd。