java 全双工服务器_利用Java实现串口全双工通讯_JAVA实例教程_IT部落
本文介紹了一個簡單的通過串口實現(xiàn)全雙工通訊的Java類庫,該類庫大大的簡化了對串口進行操作的過程
一個嵌入式系統(tǒng)通常需要通過串口與其主控系統(tǒng)進行全雙工通訊,譬如一個流水線控制系統(tǒng)需要不斷的接受從主控系統(tǒng)發(fā)送來的查詢和控制信息,并將執(zhí)行結(jié)果或查詢結(jié)果發(fā)送回主控系統(tǒng)。本文介紹了一個簡單的通過串口實現(xiàn)全雙工通訊的Java類庫,該類庫大大的簡化了對串口進行操作的過程。
本類庫主要包括:SerialBean.java(與其他應(yīng)用程序的接口),SerialBuffer.java(用來保存從串口所接收數(shù)據(jù)的緩沖區(qū)),ReadSerial.java(從串口讀取數(shù)據(jù)的程序)。另外本類庫還提供了一個例程SerialExample.java作為示范。在下面的內(nèi)容中將逐一對這幾個部分進行詳細(xì)介紹。
1.SerialBean
SerialBean是本類庫與其他應(yīng)用程序的接口。該類庫中定義了SerialBean的構(gòu)造方法以及初始化串口,從串口讀取數(shù)據(jù),往串口寫入數(shù)據(jù)以及關(guān)閉串口的函數(shù)。具體介紹如下:
publicSerialBean(intPortID)
本函數(shù)構(gòu)造一個指向特定串口的SerialBean,該串口由參數(shù)PortID所指定。PortID=1表示COM1,PortID=2表示COM2,由此類推。
publicintInitialize()
本函數(shù)初始化所指定的串口并返回初始化結(jié)果。如果初始化成功返回1,否則返回-1。初始化的結(jié)果是該串口被SerialBean獨占性使用,其參數(shù)被設(shè)置為9600,N,8,1。如果串口被成功初始化,則打開一個進程讀取從串口傳入的數(shù)據(jù)并將其保存在緩沖區(qū)中。
publicStringReadPort(intLength)
本函數(shù)從串口(緩沖區(qū))中讀取指定長度的一個字符串。參數(shù)Length指定所返回字符串的長度。
publicvoidWritePort(StringMsg)
本函數(shù)向串口發(fā)送一個字符串。參數(shù)Msg是需要發(fā)送的字符串。
publicvoidClosePort()
本函數(shù)停止串口檢測進程并關(guān)閉串口。
SerialBean的源代碼如下:
packageserial;
importjava.io.*;
importjava.util.*;
importjavax.comm.*;
/**
*
*Thisbeanprovidessomebasicfunctionstoimplementfulldulplex
*informationexchangethroughthesrialport.
*
*/
publicclassSerialBean
{
staticStringPortName;
CommPortIdentifierportId;
SerialPortserialPort;
staticOutputStreamout;
staticInputStreamin;
SerialBufferSB;
ReadSerialRT;
/**
*
*Constructor
*
*@paramPortIDtheIDoftheserialtobeused.1forCOM1,
總結(jié)
以上是生活随笔為你收集整理的java 全双工服务器_利用Java实现串口全双工通讯_JAVA实例教程_IT部落的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php拍视频上传,php视频拍照上传头像
- 下一篇: udp模拟tcp java_Java简单