Home  >  Article  >  Java  >  Java operating serial port

Java operating serial port

高洛峰
高洛峰Original
2016-12-19 17:06:551376browse

Reading and writing of Java serial port data in Win7 environment

Recently in actual projects, Java language is needed to realize reading and writing of serial port data. I could have used the javax.comm package, but after several tests, I could not read the serial port on the PC. So I changed the rxtx package and tested it under Myeclipse8.6. The test results showed that the available ports of the PC could be obtained.

RXTX package download address: http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip

After downloading and decompressing, the configuration environment is as follows:

Put rxtx in the downloaded package -2.1-7-bins-r2Windowsi368-mingw32 xtxSerial.dll

Put it under your %java_home%jre bin (%java_home%jre bin xtxSerial.dll)

Put the download package rxtx-2.1-7-bins-r2RXTXcomm. Jar is placed under %java_home%jre lib ext. Note: %java_home% will install the JDK for you. If it is MyEclipse, its default JRE is Program FilesGenuitecCommonbinarycom.sun.java.jdk.win32.x86_1.6.0.013, so you need to Place the files mentioned above into the corresponding directory of the JRE.

The following is to reference RXTXcomm.jar in Myeclipse, select the project Build Path, select Configure Build

Path, select Libraries, and click the Add Exteral

JARS button, Find RXTXcomm.jar in the pop-up dialog box, then select it, click to open, and then click OK.

Okay, now you can write the program. First, see if you can get the serial port on your PC. The program is as follows:

package test;

import java.util.Enumeration;

import gnu.io .*;

public class TestSerial {

@SuppressWarnings("unchecked")

static Enumeration

portList;

static CommPortIdentifier portId;

public static void main(String[] args) {

try {

portList = CommPortIdentifier.getPortIdentifiers();

//Get the port on the current connection

while (portList.hasMoreElements()) {

portId = (CommPortIdentifier) ​​portList.nextElement();

if (portId.getPortType () == CommPortIdentifier.PORT_SERIAL)

{//Judge if the port type is a serial port

//if (portId.getName().equals("COM3")) { //Judge if the COM3 port has been started and connect

System.out.println(portId.getName());

}

}

//}

} catch (Exception e) {

e.printStackTrace();

}

}

}

Test results:

Stable Library

========================================== ==

Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
COM1




For more articles related to Java operating serial ports, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn