World's Best SerialPort Java Developer Tool (since 1996) - World's First Commercial Java Serial Port API Not sure which package to get? SerialMagic is the leading keyboard wedge application for SPP and BLE compatible scanners. Jun 20, 2014 The 'serial communication manager (scm)' is a java library designed and developed to exchange data on serial port. It supports RS-232 control signals handshaking, monitoring and has been ported to Linux, MAC, Solaris and Windows operating system.
Mar 07, 2019 jSerialComm. A platform-independent serial port access library for Java. For usage examples, please refer to the Usage wiki. In order to use the jSerialComm library in your own project, you must simply include the JAR file in your build path and import it like any other Java package using import com.fazecast.jSerialComm. Jun 30, 2007 This is the code of connecting to serial port and writing streams and reading from it.This project was already exists on some page.What i did new is changing the GUI to javax.swing.Here in this project you choose a file to send using JFileChooser Dialog. SerialPort describes the low-level interface to a serial communications port made available by the underlying system. SerialPort defines the minimum required functionality for serial communications ports.
Package | Class | Tree | Deprecated | Index | Help |
javax.comm
Class SerialPort
- public abstract class SerialPort
- extends CommPort
An RS-232 serial communications port.
SerialPort
describes the low-level interface to a serial communications port made available by the underlying system. SerialPort
defines the minimum required functionality for serial communications ports. - Author:
- Jagane Sundar
- See Also:
CommPort
,CommPortIdentifier
Field Summary | |
static int | DATABITS_5 5 data bit format. |
static int | DATABITS_6 6 data bit format. |
static int | DATABITS_7 7 data bit format. |
static int | DATABITS_8 8 data bit format. |
static int | FLOWCONTROL_NONE Flow control off. |
static int | FLOWCONTROL_RTSCTS_IN RTS/CTS flow control on input. |
static int | FLOWCONTROL_RTSCTS_OUT RTS/CTS flow control on output. |
static int | FLOWCONTROL_XONXOFF_IN XON/XOFF flow control on input. |
static int | FLOWCONTROL_XONXOFF_OUT XON/XOFF flow control on output. |
static int | PARITY_EVEN EVEN parity scheme. |
static int | PARITY_MARK MARK parity scheme. |
static int | PARITY_NONE No parity bit. |
static int | PARITY_ODD ODD parity scheme. |
static int | PARITY_SPACE SPACE parity scheme. |
static int | STOPBITS_1 Number of STOP bits - 1. |
static int | STOPBITS_1_5 Number of STOP bits - 1-1/2. |
static int | STOPBITS_2 Number of STOP bits - 2. |
Fields inherited from class javax.comm.CommPort |
name |
Constructor Summary |
SerialPort() |
Method Summary | |
abstract void | addEventListener(SerialPortEventListener lsnr) Registers a SerialPortEventListener object to listen for SerialEvent s. |
abstract int | getBaudRate() Gets the currently configured baud rate. |
abstract int | getDataBits() Gets the currently configured number of data bits. |
abstract int | getFlowControlMode() Gets the currently configured flow control mode. |
abstract int | getParity() Get the currently configured parity setting. |
abstract int | getStopBits() Gets the currently defined stop bits. |
abstract boolean | isCD() Gets the state of the CD (Carrier Detect) bit in the UART, if supported by the underlying implementation. |
abstract boolean | isCTS() Gets the state of the CTS (Clear To Send) bit in the UART, if supported by the underlying implementation. |
abstract boolean | isDSR() Gets the state of the DSR (Data Set Ready) bit in the UART, if supported by the underlying implementation. |
abstract boolean | isDTR() Gets the state of the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation. |
abstract boolean | isRI() Gets the state of the RI (Ring Indicator) bit in the UART, if supported by the underlying implementation. |
abstract boolean | isRTS() Gets the state of the RTS (Request To Send) bit in the UART, if supported by the underlying implementation. |
abstract void | notifyOnBreakInterrupt(boolean enable) Expresses interest in receiving notification when there is a break interrupt on the line. |
abstract void | notifyOnCarrierDetect(boolean enable) Expresses interest in receiving notification when the CD (Carrier Detect) bit changes. |
abstract void | notifyOnCTS(boolean enable) Expresses interest in receiving notification when the CTS (Clear To Send) bit changes. |
abstract void | notifyOnDataAvailable(boolean enable) Expresses interest in receiving notification when input data is available. |
abstract void | notifyOnDSR(boolean enable) Expresses interest in receiving notification when the DSR (Data Set Ready) bit changes. |
abstract void | notifyOnFramingError(boolean enable) Expresses interest in receiving notification when there is a framing error. |
abstract void | notifyOnOutputEmpty(boolean enable) Expresses interest in receiving notification when the output buffer is empty. |
abstract void | notifyOnOverrunError(boolean enable) Expresses interest in receiving notification when there is an overrun error. |
abstract void | notifyOnParityError(boolean enable) Expresses interest in receiving notification when there is a parity error. |
abstract void | notifyOnRingIndicator(boolean enable) Expresses interest in receiving notification when the RI (Ring Indicator) bit changes. |
abstract void | removeEventListener() Deregisters event listener registered using addEventListener . |
abstract void | sendBreak(int millis) Sends a break of millis milliseconds duration. |
abstract void | setDTR(boolean dtr) Sets or clears the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation. |
abstract void | setFlowControlMode(int flowcontrol) Sets the flow control mode. |
void | setRcvFifoTrigger(int trigger) Deprecated.This was advisory only. |
abstract void | setRTS(boolean rts) Sets or clears the RTS (Request To Send) bit in the UART, if supported by the underlying implementation. |
abstract void | setSerialPortParams(int baudrate, int dataBits, int stopBits, int parity) Sets serial port parameters. |
Methods inherited from class javax.comm.CommPort |
close, disableReceiveFraming, disableReceiveThreshold, disableReceiveTimeout, enableReceiveFraming, enableReceiveThreshold, enableReceiveTimeout, getInputBufferSize, getInputStream, getName, getOutputBufferSize, getOutputStream, getReceiveFramingByte, getReceiveThreshold, getReceiveTimeout, isReceiveFramingEnabled, isReceiveThresholdEnabled, isReceiveTimeoutEnabled, setInputBufferSize, setOutputBufferSize, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
DATABITS_5
- 5 data bit format.
- See Also:
- Constant Field Values
DATABITS_6
- 6 data bit format.
- See Also:
- Constant Field Values
DATABITS_7
- 7 data bit format.
- See Also:
- Constant Field Values
DATABITS_8
- 8 data bit format.
- See Also:
- Constant Field Values
STOPBITS_1
- Number of STOP bits - 1.
- See Also:
- Constant Field Values
STOPBITS_2
- Number of STOP bits - 2.
- See Also:
- Constant Field Values
STOPBITS_1_5
- Number of STOP bits - 1-1/2. Some UARTs permit 1-1/2 STOP bits only with 5 data bit format, but permit 1 or 2 STOP bits with any format.
- See Also:
- Constant Field Values
PARITY_NONE
- No parity bit.
- See Also:
- Constant Field Values
PARITY_ODD
- ODD parity scheme. The parity bit is added so there are an odd number of TRUE bits.
- See Also:
- Constant Field Values
PARITY_EVEN
- EVEN parity scheme. The parity bit is added so there are an even number of TRUE bits.
- See Also:
- Constant Field Values
PARITY_MARK
- MARK parity scheme.
- See Also:
- Constant Field Values
PARITY_SPACE
- SPACE parity scheme.
- See Also:
- Constant Field Values
FLOWCONTROL_NONE
- Flow control off.
- See Also:
- Constant Field Values
FLOWCONTROL_RTSCTS_IN
- RTS/CTS flow control on input.
- See Also:
- Constant Field Values
FLOWCONTROL_RTSCTS_OUT
- RTS/CTS flow control on output.
- See Also:
- Constant Field Values
FLOWCONTROL_XONXOFF_IN
- XON/XOFF flow control on input.
- See Also:
- Constant Field Values
FLOWCONTROL_XONXOFF_OUT
- XON/XOFF flow control on output.
- See Also:
- Constant Field Values
Constructor Detail |
SerialPort
Method Detail |
getBaudRate
- Gets the currently configured baud rate.
- Returns:
- integer value indicating the baud rate
getDataBits
- Gets the currently configured number of data bits.
- Returns:
- integer that can be equal to DATABITS_5, DATABITS_6, DATABITS_7, or DATABITS_8
getStopBits
- Gets the currently defined stop bits.
- Returns:
- integer that can be equal to STOPBITS_1, STOPBITS_2, or STOPBITS_1_5
getParity
- Get the currently configured parity setting.
- Returns:
- integer that can be equal to PARITY_NONE, PARITY_ODD, PARITY_EVEN, PARITY_MARK or PARITY_SPACE.
sendBreak
- Sends a break of
millis
milliseconds duration. Note that it may not be possible to time the duration of the break under certain Operating Systems. Hence this parameter is advisory. - Parameters:
millis
- duration of break to send
setFlowControlMode
flowcontrol
- Can be a bitmask combination of - FLOWCONTROL_NONE: no flow control
- FLOWCONTROL_RTSCTS_IN: RTS/CTS (hardware) flow control for input
- FLOWCONTROL_RTSCTS_OUT: RTS/CTS (hardware) flow control for output
- FLOWCONTROL_XONXOFF_IN: XON/XOFF (software) flow control for input
- FLOWCONTROL_XONXOFF_OUT: XON/XOFF (software) flow control for output
- Throws:
UnsupportedCommOperationException
- if any of the flow control mode was not supported by the underline OS, or if input and output flow control are set to different values, i.e. one hardware and one software. The flow control mode will revert to the value before the call was made.
getFlowControlMode
- Gets the currently configured flow control mode.
- Returns:
- an integer bitmask of the modes FLOWCONTROL_NONE, FLOWCONTROL_RTSCTS_IN, FLOWCONTROL_RTSCTS_OUT, FLOWCONTROL_XONXOFF_IN, and FLOWCONTROL_XONXOFF_OUT.
setRcvFifoTrigger
- Deprecated.This was advisory only.
- Set the Receive Fifo trigger level If the uart has a FIFO and if it can have programmable trigger levels, then this method will cause the uart to raise an interrupt after trigger bytes have been received.
- Parameters:
trigger
- level
setSerialPortParams
baudrate
- If the baudrate passed in by the application is unsupported by the driver, the driver will throw an UnsupportedCommOperationExceptiondataBits
- - DATABITS_5: 5 bits
- DATABITS_6: 6 bits
- DATABITS_7: 7 bits
- DATABITS_8: 8 bits
stopBits
- - STOPBITS_1: 1 stop bit
- STOPBITS_2: 2 stop bits
- STOPBITS_1_5: 1.5 stop bits
parity
- - PARITY_NONE: no parity
- PARITY_ODD: odd parity
- PARITY_EVEN: even parity
- PARITY_MARK: mark parity
- PARITY_SPACE: space parity
UnsupportedCommOperationException
- if any of the above parameters are specified incorrectly. All four of the parameters will revert to the values before the call was made. DEFAULT: 9600 baud, 8 data bits, 1 stop bit, no parity
setDTR
dtr
- - true: set DTR
- false: clear DTR
isDTR
- Gets the state of the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation.
setRTS
rts
-
- true: set RTS
- false: clear RTS
isRTS
- Gets the state of the RTS (Request To Send) bit in the UART, if supported by the underlying implementation.
isCTS
- Gets the state of the CTS (Clear To Send) bit in the UART, if supported by the underlying implementation.
isDSR
- Gets the state of the DSR (Data Set Ready) bit in the UART, if supported by the underlying implementation.
isRI
- Gets the state of the RI (Ring Indicator) bit in the UART, if supported by the underlying implementation.
isCD
- Gets the state of the CD (Carrier Detect) bit in the UART, if supported by the underlying implementation.
addEventListener
Registers aSerialPortEventListener
object to listen for SerialEvent
s. Interest in specific events may be expressed using the notifyOnXXX
calls. The serialEvent
method of SerialPortEventListener
will be called with a SerialEvent
object describing the event. The current implementation only allows one listener per
SerialPort
. Once a listener is registered, subsequent call attempts to addEventListener
will throw a TooManyListenersException without effecting the listener already registered. All the events received by this listener are generated by one dedicated thread that belongs to the SerialPort object. After the port is closed, no more event will be generated. Another call to
open()
of the port's CommPortIdentifier
object will return a new CommPort
object, and the lsnr has to be added again to the new CommPort
object to receive event from this port. - Parameters:
lsnr
- TheSerialPortEventListener
object whoseserialEvent
method will be called with aSerialEvent
describing the event.- Throws:
java.util.TooManyListenersException
- If an initial attempt to attach a listener succeeds, subsequent attempts will throw TooManyListenersException without effecting the first listener.
removeEventListener
Deregisters event listener registered usingaddEventListener
. This is done automatically at port close.
notifyOnDataAvailable
Expresses interest in receiving notification when input data is available. This may be used to drive asynchronous input. When data is available in the input buffer, this event is propagated to the listener registered usingaddEventListener
. The event will be generated once when new data arrive at the serial port. Even if the user doesn't read the data, it won't be generated again until next time new data arrive.
enable
- - true: enable notification
- false: disable notification
notifyOnOutputEmpty
Expresses interest in receiving notification when the output buffer is empty. This may be used to drive asynchronous output. When the output buffer becomes empty, this event is propagated to the listener registered usingaddEventListener
. The event will be generated after a write is completed, when the system buffer becomes empty again. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnCTS
Expresses interest in receiving notification when the CTS (Clear To Send) bit changes. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- >
notifyOnDSR
Expresses interest in receiving notification when the DSR (Data Set Ready) bit changes. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnRingIndicator
Expresses interest in receiving notification when the RI (Ring Indicator) bit changes. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnCarrierDetect
Expresses interest in receiving notification when the CD (Carrier Detect) bit changes. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnOverrunError
Expresses interest in receiving notification when there is an overrun error. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnParityError
Expresses interest in receiving notification when there is a parity error.Java Serial Port Communication
This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnFramingError
Expresses interest in receiving notification when there is a framing error. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
notifyOnBreakInterrupt
Expresses interest in receiving notification when there is a break interrupt on the line. This notification is hardware dependent and may not be supported by all implementations.
enable
- - true: enable notification
- false: disable notification
Package | Class | Tree | Deprecated | Index | Help |
The Java Communications 3.0 API is a Java extension that facilitates developing platform-independent communications applications for technologies such as Smart Cards, embedded systems, and point-of-sale devices, financial services devices, fax, modems, display terminals, and robotic equipment.
The Java Communications API (also known as javax.comm) provides applications access to RS-232 hardware (serial ports) and limited access to IEEE-1284 (parallel ports), SPP mode.
Implementations of the API are currently available for Solaris SPARC, Solaris x86, and Linux x86. Each of Oracle's available implementations works with the Sun Ray thin client product line, and include portmapping extensions to allow an administer to specify the locations of ports as well as their visibility, names, and in some cases annotated reference.
API serial features:
Java Serial Port Linux
- Enumeration of ports (administrator and user configurable port mapping)
- Port configuration (baud rate, speed, stop bits, parity)
- Access to EIA232 standard DTR, CD, CTS, RTS and DSR signals
- Transfer of data over RS-232 ports
- Hardware and software flow-control options
- Receive-buffer threshold control
- Asynchronous event option for notification of:
- Data available on an RS-232 port
- Port hardware line level changes
- Port ownership changes within a single JVM
Java Open A Serial Port
Java communications API was initially released in 1997, prior to the Java Community Process, was 'grandfathered in' to the JCP (http://www.jcp.org) without having an associated JSR (Java Specification Request).