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