java调用coms端口串口通信的方法。
首先需要下到串口驱动。javacomm20-win32.zip
去sun的主页应该有下的。
在这个驱动中有comm.jar,javax.comm.properties,win32com.dll
这么3个重要的文件。
1、首先配置驱动,把javax.comm.properties,win32com.dll拷贝到你的jdk中
具体位置为C:\Program Files\Java\jdk1.6.0_06\bin
然后配置windows系统环境变量,在path中加入C:\Program Files\Java\jdk1.6.0_06\bin;
打开你的java工程,配置user library,并导入comm.jar包。
2、现在就可以开始写代码了。串口读写代码如下
CommPortIdentifier portID = CommPortIdentifier.getPortIdentifier(com);//1,先拿到Identifier
//其中com是String类型的,传入的是串口名com="COM1";
SerialPort port = (SerialPort)portID.open("MyComm", 100000000);//2,打开串口
//"MyComm"是串口名,100000000是串口过期时间(ms)。
port.setSerialPortParams(rate, databits,stopbit, parity);//3,设置串口属性
//rate 波特率(默认9600),databits载波位(默认8),stopbit停止位(默认1),parity校验位(默认0无校验)
port.setFlowControlMode(SerialPort.FLOWCONTROL_NONE);//4(可选)设置数据流控制模式,默认为无
port.close();//关闭串口
3、串口读入写出流。
OutputStream os=port.getOutputStream();//拿到写出流。写出流就随便写就行。
port.getOutputStream().flush();//写完要记得做一次冲一下缓冲区
InputStream is= port.getInputStream();//拿到读入流。
is.read();//每次读入一个int,这个是个阻塞函数,在无数据的时候会中断。
4、串口读入轮询模式
一种读取的方式是每次做
byte b[]=new byte[1024];
is.read(b);
如果返回的是-1表示无数据。可以中断几毫秒然后再去读。
比较低效的一种读取模式,但是在使用阻塞函数的时候还是很好用的。
5、串口的监听模式
//5.1首先建立监听类
public class CommListener implements SerialPortEventListener
//继承自javax.comm.SerialPortEventListener;
//实现监听方法public void serialEvent(SerialPortEvent arg0){}
当有新数据进入的时候会被调用,传入javax.comm.SerialPortEvent对象参数。
if (arg0.getEventType()==SerialPortEvent.DATA_AVAILABLE)//如果是有效数据的话就做read
{
//read();
}
//5.2建立好监听类以后要在port上添加。
port.addEventListener(commListener);
//其中port是上文打开的串口端口,commListener是上文的监听器实例
port.notifyOnDataAvailable(true);//设置监听模式为当有数据到达时唤醒监听线程。
//千万注意一定要有这句代码,其他很多博文都没有介绍这个。没这句话就不会唤醒监听线程了。
分享到:
相关推荐
Java串口通信编程
commapi基础 RS232基础 Win32&Linux;下串口编程的差异 串口实现全双工通讯的Java类库等共8个文件,全面掌握JAVA串口编程
java串口编程实例 ConnDB.java
基于RXTXcomm.jar包所写的java串口通信代码,主要就两个文件,一个是src中的JavaRs232.java文件,代码都在里面。另一个就是在RXTX文件夹中的RXTXcomm.jar包
详细的介绍了串口编程的集中模式,并且有详细的例子。
这个是一个java串口编程实例,里面的代码写了怎么连接串口,怎么接收数据等等。后面会有文档附上,一块下载下来看看就懂了,一定可以看懂,很简单。
Java串口编程
Java串口通信攻击技术Java串口通信攻击技术Java串口通信攻击技术Java串口通信攻击技术Java串口通信攻击技术
一个很实用的Java串口编程实例 有解说 附加一个Java手机串口短信发送的代码例子
从最基础的串口通信介绍如何用java去实现,知道了串口通信的原理之后再用代码实现应该就是最简单的事情了吧
Java串口编程 - 介绍java串口实现方法
串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信编程大全串口通信...
这是一个用于JAVA串口通信的运行环境包,想用java进行串口或者并口编程的同志可以拿去用用
mac上的java串口编程包(github上也有)
RXTX java串口编程jar包RXTX java串口编程jar包RXTX java串口编程jar包RXTX java串口编程jar包RXTX java串口编程jar包RXTX java串口编程jar包
Java串口通信编程指南SerialProgrammingGuideVia[1].doc
Java串口通信编程指南 Java串口通信编程指南
这时我以前编制rs-232串口程序时收集的一些有关串口编程的硬件和软件技术资料,对于想学习串口编程的朋友比较实用的。里面讲述了有关串口的基本支持和用VB通信时的一些技巧和注意方法。声明:本资料来自互联网,版权...
java,串口通信,PC-PC串口,实现串口通信,PC-PC串口
jar包含32位与64位版本使用方法如下:拷贝 RXTXcomm.jar 到 <JAVA_HOME>\jre\lib\ext目录中