Java串口编程

所需积分/C币:10 2011-12-16 270KB PDF
评分

Java串口编程
nport Java.10.* public class readBuffer extends Thread private ScrialBuffcr ComBuffer public ReadBuffer(SerialBuffer SB) ComBuffer= sB public void run O String M while (true) Msg= ComBuft'er. GietMsg( System. out. printIn (Msg * ReadSerial. java 1.0 s Program to read characters from the serial port and put it 米 to the buffer s Created. March 27 2001 Author: Qingye Jiang (John) *s American GNc Corppration * 888 Easy St, Simi Valley CA 93065-1812 Contac t:(805)582-0582(Te1),(805)582-0098(Fax) jiang@tsinghua. edu Import Java. 10.*k public class readSerial extends Thread private scrialBuffcr ComBuffcr orivate file comport public RcadScrial(ScrialBuffer SB, Filc Port) ComBuffer= sB ComPort port public void run) int c L Filereader in= new FileReader(ComPort while (true) c= in. read o ComBuffer PutChar(c) try FileReader in= new FileReader( ComPort) while(true) c= in read( ComBuffer Put Char(c) y catch (IOException e) t s SerialBuffer. java 1.0 k Class that implements the serial buffer Created: March 27. 2001 Author: Qingye Jiang (johi k American GNC Corporation *888 Easy St, Simi Valley CA 93065-1812 k Contact:(805)582-0582(Te1),(805)582-0098(Fax) nggtsinghua edu public class scrial Buffer private String Content private String CurrentMsg, TempContent private boolean available- false public synchronized String GetMsg O if (( SepMark= Content. indexOf(*'))==-1 lable= fal while (available== false) try t y catch (InterruptedException e)i) SepMark= Content. indexOf(*') CurrentMsg= Cont ent. substring(0, SepMark) Content. substring (SepMark+1) Content= TempContent notityAll O return CurrentMsg public synchronized void Put Char(int c) Character d- new Character((char) c) Contcnt- Content. concat(d toString() if (c available- truc notifyAllO 水 *s WriteSerial. java 1.0 Program to send a character to the serial port s Created: March 27. 2001 Author: Qingye Jiang (John) * American GNC Corporation c 888 Easy St, Simi Val ley ca 93065-1812 k Contact:(805)582-0582(Tel),(805)582-0098(Fax) qjiangktsinghua edu lmport lava. 10. k public class WriteSerial extends Thread private SerialBuffer ComBuffer private File ComPort public WriteSerial(File Port publi c void rur Int c FileWriter out- new FileWriter(ComPort) hilc(truc) te(*) Systcm. out. printIn(c gomEs sagc() Import java.1o.水 public class SendCom public static void main (Stri File OutFile= new File( send. TXt") File ComPort new File( coM2") FileReader in= new FileReader(OutFile) FileWriter out- new FileWriter(ComPort) thile (( out write(c) in close o tclose o catch(IOException e) SEND, TXT> This is a sample of the data file for program testing. x It should be in the same directory as the SendCom. class file. ik When you run this sample program, connect your CoMl and COM2 wi th a serial cable so that you can test this program on one machine. If you have two machines, you can connect the two machine via a serial cable and test it. Modified the definition of ComPort in the program if neces sary.冰 Thank you for testing this program. If you have any suggestions plcaso kindly let me know. Ne 个嵌入式系统通常需要通过串口与其主控系统进行仝双工通讯,譬如一个流水线控制 系统需要不断的接受从主控系统发送来的査询和控制信息,并将执行结果或査询结果发 送回主控系统。本文介绍了一个简单的通过串口实现全双工通讯的类库,该类库 大大的简化了对串口进行操作的过程。 本类库主要包括: 与其他应用程序的接口 用来 保存从串口所接收数据的缓冲区 从串口读取数据的程序。另外本类 库还提供了一个例程 作为小范。在卜面的内容中将逐一对这儿个 部分进行详细介绍 是木类库与其他应用程序的接口。该类库中定义了 的构造 方法以及初始化串口,从串口读取数据,往串口写入数据以及关闭串口的函数。具体介 绍如下: 本函数构造个指向特定串口的 该昂口由参数 所指定。 表示 表 ,由此类推。 本函数初始化所指定的串凵并返回初始化结果。如果初始化成功返回,否则返回。初始化的绐果是该串凵被 独占性使用,其参薮被设置为 。如果串口被成功初始化,则打开一个进程读取从串口传入的数 据并将其保存在缓冲区中。 本数从中口缓冲区中读取指定长度的一个字符申。参数 指定所返回字符串的长度。 本函数向串口发送一个字符串。参数是需要发送的字符串。 本函数停止串口检测进程井关闭串口 的源代码如下

...展开详情
立即下载 最低0.43元/次 身份认证VIP会员低至7折
举报 举报 收藏 收藏
分享

评论 下载该资源后可以进行评论 6

andychen166 在别的地方找到了整个工程,而这个文档则是对他的描述!!挺好用!!
2014-07-29
回复
terryzhao 可以实现,学习一下
2014-04-17
回复
暗临 很好,很有帮助,一直调试串口都有问题。
2013-11-15
回复
ghjk_l 内容蛮好的,可以借鉴一下
2013-10-24
回复
风扬蛮子 还不错,不过我的实验是在root过的机器上okay。没root过的会不会没权限?
2013-10-11
回复
img
chinafjfzlj

关注 私信 TA的资源

上传资源赚积分,得勋章
相关内容推荐