⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simpleread.java

📁 这是我自己写的,请各位高手看一下!!是关于串口方面的编程,用java
💻 JAVA
字号:
/* * @(#)SimpleRead.java	1.12 98/06/25 SMI * * Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved. * * Sun grants you ("Licensee") a non-exclusive, royalty free, license  * to use, modify and redistribute this software in source and binary * code form, provided that i) this copyright notice and license appear * on all copies of the software; and ii) Licensee does not utilize the * software in a manner which is disparaging to Sun. * * This software is provided "AS IS," without a warranty of any kind. * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND * ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY * LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE * SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS * BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, * HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING * OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN * ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * * This software is not designed or intended for use in on-line control * of aircraft, air traffic, aircraft navigation or aircraft * communications; or in the design, construction, operation or * maintenance of any nuclear facility. Licensee represents and * warrants that it will not use or redistribute the Software for such * purposes. */import java.io.*;import java.util.*;import javax.comm.*;public class SimpleRead implements Runnable, SerialPortEventListener {    static CommPortIdentifier portId;    static Enumeration portList;    InputStream inputStream;    SerialPort serialPort;    Thread readThread;    public static void main(String[] args) {        portList = CommPortIdentifier.getPortIdentifiers();        while (portList.hasMoreElements()) {            portId = (CommPortIdentifier) portList.nextElement();            if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {                // if (portId.getName().equals("COM1")) {                if (portId.getName().equals("/dev/term/a")) {                    SimpleRead reader = new SimpleRead();                }            }        }    }    public SimpleRead() {        try {            serialPort = (SerialPort) portId.open("SimpleReadApp", 2000);        } catch (PortInUseException e) {}        try {            inputStream = serialPort.getInputStream();        } catch (IOException e) {}	try {            serialPort.addEventListener(this);	} catch (TooManyListenersException e) {}        serialPort.notifyOnDataAvailable(true);        try {            serialPort.setSerialPortParams(9600,                SerialPort.DATABITS_8,                SerialPort.STOPBITS_1,                SerialPort.PARITY_NONE);        } catch (UnsupportedCommOperationException e) {}        readThread = new Thread(this);        readThread.start();    }    public void run() {        try {            Thread.sleep(20000);        } catch (InterruptedException e) {}    }    public void serialEvent(SerialPortEvent event) {        switch(event.getEventType()) {        case SerialPortEvent.BI:        case SerialPortEvent.OE:        case SerialPortEvent.FE:        case SerialPortEvent.PE:        case SerialPortEvent.CD:        case SerialPortEvent.CTS:        case SerialPortEvent.DSR:        case SerialPortEvent.RI:        case SerialPortEvent.OUTPUT_BUFFER_EMPTY:            break;        case SerialPortEvent.DATA_AVAILABLE:            byte[] readBuffer = new byte[20];            try {                while (inputStream.available() > 0) {                    int numBytes = inputStream.read(readBuffer);                }                System.out.print(new String(readBuffer));            } catch (IOException e) {}            break;        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -