Serial port 在处理过程中,每行读取串行行
我正在开发一个简单的演示应用程序,这个程序最终应该会显示一个显示我的传感器数据的图表 我遇到的问题是,除了使用Serial port 在处理过程中,每行读取串行行,serial-port,processing,Serial Port,Processing,我正在开发一个简单的演示应用程序,这个程序最终应该会显示一个显示我的传感器数据的图表 我遇到的问题是,除了使用port.readString(),我找不到任何其他方法从串行端口读取数据。这似乎是正确的方法,但这样它不会每行读取序列号 这是我得到的当前输出,不要担心“写入文件”和“写入的项目”文本。我知道如何解决这个问题,这不是问题 对于程序的输入,每行应包含12个值。如果没有这一点,从这些数据中获取图表将变得更加困难 有没有办法获得每行的串行数据,而不是在数字中间的“随机”线段?,听起来好像你
port.readString()
,我找不到任何其他方法从串行端口读取数据。这似乎是正确的方法,但这样它不会每行读取序列号
这是我得到的当前输出,不要担心“写入文件”和“写入的项目”文本。我知道如何解决这个问题,这不是问题
对于程序的输入,每行应包含12个值。如果没有这一点,从这些数据中获取图表将变得更加困难
有没有办法获得每行的串行数据,而不是在数字中间的“随机”线段?
,听起来好像你在寻找。< /P>
readstringtill()
函数的操作与您描述的完全相同,它将读取字符串
,直到到达您指定的字符(可以是换行符)。事实上,链接中的示例就是这样使用的
如果由于某种原因无法正常工作,则可以使用bufferUntil()
函数和serialEvent()
回调函数在一行完成时获取事件。或者,您可以自己检测换行符,并根据需要拆分值
如果你被卡住了,我建议你尝试一些东西,然后贴一封邮件。祝你好运。哇,你说得对。这似乎是一个完美的解决方案。我不明白为什么我以前的搜索结果中没有出现这个。我明天会检查这是否对我有好处:D@MathieuBrouwers没问题。希望对你有用。充分披露:我以前从未实际使用过串行库,因此这是我阅读文档的最佳猜测。如果有更好的答案,我相信乔治(这里的另一个处理人员)很快就会出现p现在唯一对我来说没有意义的事情是以下几点。
readStringUntil()
方法将int作为参数,我不能说readStringUntil(“\n”)
,但是如果将10
作为int,它就可以按照串行库文档中的说明执行。谢谢@Mathieubrowers它需要一个int
,但实际上它是一个字符。Ascii将\n
字符表示为int
值10
。更多信息请点击此处: