Java CDCSerialDevice類(lèi)使用實(shí)例

小億
89
2023-12-18 15:40:01

以下是一個(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)閉輸入流、輸出流以及串口連接。

0