以下是一個(gè)使用Java CDCSerialDevice類(lèi)的示例:
import javax.microedition.io.*;
import javax.microedition.io.comm.*;
import java.io.*;
public class SerialCommunicationExample {
public static void main(String[] args) {
try {
// 打開(kāi)串口
String portName = "COM1";
CommConnection conn = (CommConnection) Connector.open("comm:" + portName + ";baudrate=9600");
// 獲取輸入流和輸出流
InputStream inputStream = conn.openInputStream();
OutputStream outputStream = conn.openOutputStream();
// 發(fā)送數(shù)據(jù)
String sendData = "Hello World!";
outputStream.write(sendData.getBytes());
outputStream.flush();
// 接收數(shù)據(jù)
byte[] receiveData = new byte[1024];
int bytesRead = inputStream.read(receiveData);
String receivedData = new String(receiveData, 0, bytesRead);
System.out.println("Received data: " + receivedData);
// 關(guān)閉流和連接
inputStream.close();
outputStream.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
上述示例中,我們使用了Java CDCSerialDevice類(lèi)來(lái)實(shí)現(xiàn)串口通信。首先,我們通過(guò)Connector.open方法打開(kāi)指定的串口,并使用CommConnection類(lèi)型的對(duì)象接收返回的連接。
然后,我們通過(guò)CommConnection對(duì)象獲取輸入流和輸出流,分別用于接收和發(fā)送數(shù)據(jù)。
接下來(lái),我們通過(guò)輸出流將發(fā)送數(shù)據(jù)寫(xiě)入串口。在這個(gè)例子中,我們發(fā)送了一個(gè)字符串"Hello World!"。
然后,我們通過(guò)輸入流讀取串口返回的數(shù)據(jù),并將其轉(zhuǎn)換為字符串。最后,我們打印接收到的數(shù)據(jù)。
最后,我們關(guān)閉輸入流、輸出流以及串口連接。