黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java串口通信模擬器

Java串口通信模擬器

更新時間:2022-06-14 10:36:05 來源:動力節(jié)點 瀏覽2093次

動力節(jié)點小編來給大家介紹一下java串口模擬器,java串口通信由于沒有相應的串口硬件,選了一款windows串口虛擬機機器。

1. 準備

串口模擬器

Launch Virtual Serial Port Driver

模擬兩對四個串口,COM1發(fā)送數(shù)據(jù)給COM2,COM3發(fā)送數(shù)據(jù)給COM4

java包

<dependency>
    <groupId>com.fazecast</groupId>
    <artifactId>jSerialComm</artifactId>
    <version>[2.0.0,3.0.0)</version>
</dependency>

2. java源代碼

mport com.fazecast.jSerialComm.SerialPort;
import com.fazecast.jSerialComm.SerialPortDataListener;
import com.fazecast.jSerialComm.SerialPortEvent;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @Classname ComTest
 * @Description com串口通信
 * @Date 2021/9/4 10:44
 * @Created by huangsm
 */
public class ComTest {
    /**
     * <com名稱,SerialPort>串口通信map,存儲串口名稱與串口信息
     */
    private Map<String, SerialPort> comMap = new HashMap<>();
    /**
     * com口列表
     */
    private List<String> comList = new ArrayList<>();
    public ComTest() {
        //將所有的串口信息放入comlist,comMap中
        SerialPort[] commPorts = SerialPort.getCommPorts();
        for (SerialPort commPort : commPorts) {
            comList.add(commPort.getSystemPortName());
            comMap.put(commPort.getSystemPortName(), commPort);
            //監(jiān)聽所有串口通信的數(shù)據(jù)
            commPort.openPort();
            commPort.addDataListener(new SerialPortDataListener() {
                @Override
                public int getListeningEvents() {
                    return SerialPort.LISTENING_EVENT_DATA_RECEIVED;
                }
                @Override
                public void serialEvent(SerialPortEvent serialPortEvent) {
                    byte[] newData = serialPortEvent.getReceivedData();
                    System.err.println(String.format("串口%s接收到數(shù)據(jù)大?。?s,串口數(shù)據(jù)內(nèi)容:%s"
                            ,serialPortEvent.getSerialPort().getSystemPortName(),newData.length,new String(newData)));
                }
            });
        }
    }
    public static void main(String[] args) throws Exception {
        ComTest comTest = new ComTest();
        List<String> comList = comTest.comList;
        Map<String, SerialPort> comMap = comTest.comMap;
        BufferedReader systemIn = new BufferedReader(new InputStreamReader(System.in));
        while (true) {
            System.out.println("你的可以通信的串口列表");
            for (String comName : comList) {
                System.out.println("========" + comName + "========");
            }
            System.out.println("請輸入你的串口:");
            String com = systemIn.readLine();
            if(!comList.contains(com)){
                System.out.println("輸入的串口不正確:");
                continue;
            }
            System.out.println("輸入你要發(fā)送的消息:");
            String msg = systemIn.readLine();
            SerialPort serialPort = comMap.get(com);
            serialPort.writeBytes(msg.getBytes(),msg.getBytes().length);
            //這里是讓串口先接收到數(shù)據(jù)再重新發(fā)送數(shù)據(jù)
            Thread.sleep(1000);
        }
    }
}

3. 運行結(jié)果

你的可以通信的串口列表
========COM1========
========COM2========
========COM3========
========COM4========
請輸入你的串口:
COM3
輸入你要發(fā)送的消息:
137912037
串口COM4接收到數(shù)據(jù)大?。?,串口數(shù)據(jù)內(nèi)容:137912037
你的可以通信的串口列表
========COM1========
========COM2========
========COM3========
========COM4========
請輸入你的串口:

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 日韩专区在线观看 | 国产亚洲精品在天天在线麻豆 | 农村黄a三级三级三级 | 青草视频在线观看视频 | 亚洲欧美日韩中字综合 | 中文字幕精品1在线 | 高清欧美在线三级视频 | 国产特黄1级毛片 | 欧美日韩一区二区视频图片 | 偷亚洲偷国产欧美高清 | 26uuu另类欧美亚洲日本 | 欧美妞干网 | 亚洲综合区小说区激情区噜噜 | 久久亚洲综合 | 国产日韩精品视频 | 欧美视频在线播放 | 国产免费一区不卡在线 | 国产成人综合91精品 | 小黄视频免费观看 | 丁香激情小说 | 欧美日韩一区二区三区四区 | 日韩欧美在线视频 | 一级黄色性生活视频 | 国产精品99久久免费观看 | 日韩影视在线 | 欧美日韩一区二区中文字幕视频 | 久久亚洲欧美成人精品 | a级毛片无码免费真人 | 成人精品网| 天天摸天天做天天爽天天弄 | 免费级毛片 | 日批日韩在线观看 | 久草黑丝| 中文字幕亚洲综合久久菠萝蜜 | 色伦网 | 干操视频| 欧美区日韩区 | 日韩欧美亚洲另类 | 人人添人人澡人人澡人人诱 | www日本黄色 | 欧美不卡一区二区三区免 |