日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

linux設置串口波特率和讀取

作者:小徐敲java 更新時間: 2024-04-04 編程語言

設置串口波特率(有些串口是需要設置才能輸出讀取)

stty -F /dev/ttyUSB0 raw speed 9600

讀取串口信息

cat /dev/ttyUSB0

java代碼讀取

import gnu.io.*;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;

public class SerialCommunicationExample {
    public static void main(String[] args) {
        try {
            // 設置串口波特率
            String portName = "/dev/ttyUSB0"; // 串口設備名稱
            int baudRate = 9600; // 波特率

            CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier(portName);
            if (portIdentifier.isCurrentlyOwned()) {
                System.out.println("Error: Port is currently in use");
            } else {
                CommPort commPort = portIdentifier.open(SerialCommunicationExample.class.getName(), 2000);

                if (commPort instanceof SerialPort) {
                    SerialPort serialPort = (SerialPort) commPort;
                    serialPort.setSerialPortParams(baudRate, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);

                    // 讀取串口信息
                    BufferedReader reader = new BufferedReader(new InputStreamReader(serialPort.getInputStream()));
                    String line;
                    while ((line = reader.readLine()) != null) {
                        System.out.println("Received: " + line);
                    }

                    reader.close();
                    serialPort.close();
                } else {
                    System.out.println("Error: Only serial ports are handled by this example.");
                }
            }
        } catch (NoSuchPortException | PortInUseException | UnsupportedCommOperationException | IOException e) {
            e.printStackTrace();
        }
    }
}

原文鏈接:https://blog.csdn.net/qq_19891197/article/details/135768144

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新