使用java的串口GUI

时间:2010-01-05 15:28:33

标签: java user-interface serial-port

我正在解释我的全部问题。 所以我正在为使用串口连接到我的PC的设备构建一个GUI。我使用javacomm apis和eclipse作为我的工具。为了将数据写入串口我使用线程并且为了读取我将使用线程或EventListener。所以现在我的问题是,如果我发送任何命令到串口,那么它应该响应一些数据,我将在textArea上打印这些数据。但是我的设备用不同的模式响应数据,比如段落中的某些时间,有时冒号分开,有时一行和冒号分开。以下示例

type 1:
line 1 line 1 line 1 line 1 line 1 line 1 line
parameter 1 : value 1
parameter 2 : value 2 
parameter 3 : value 3

type 2:
line 1 line 1 line 1 parameter 4 and value 4 line 1 line 1 line 1 line 1
line 2 parameter 5 : value 5 line 2 line 2 line 2

type 3:
line 1 line 1 line 1 line 1 :
      parameter 6 = value 6
      parameter 7 = value 7

现在,当我在串口上写入不同的命令时,它们会以不同的格式发送数据。因此,如果要将数据简单地放在一个textArea中,就没有问题。但如果我想把数据放在下面的标签中

parameter 1(in label 1) : value 1 (label 2)
parameter 2(in label 3) : value 2 (label 4)

所以要从串口数据显示如上所示的数据我该怎么办?如果我使用字符串函数来检查冒号(:)和等号(=),当任何数据从串口到达时,我必须放置太多if else echecks或switch case。每当任何命令的任何输出从远程设备到达pc时,它都必须通过大量的switch case和if-else case ......

我认为它需要一个更好的设计..有没有人知道任何设计模式来设计串口的GUI?或者欢迎任何类型的建议......

我知道问题描述可能有如此多的复杂性。如果有人发现难以理解我的奇怪解释,请问我,我会尝试更好地解释我的问题.......

1 个答案:

答案 0 :(得分:0)

也许正则表达式可以进行解析。