Java进行串口通讯,一般需要相关的开源jar包,比较通用的为RXTXComm.jar和comm.jar,其中RXTXComm.jar为在comm.jar基础上进行了封装,对操作系统等一些底层做了适配。现结合短信猫对串口通讯做下记录(win环境):
短信猫是收发短信的一个设备,类似于手机。其通过串口可以和电脑进行连接,从而进行通讯。一般java操作短信的开源jar包为smslib.jar,其需要底层串口通讯开源jar包的支持,即RXTXComm.jar或comm.jar。
使用RXTXComm.jar需要的其他文件为javax.comm.properties和rxtxSerial.dll。在javax.comm.properties中配置相关的类,如下所示:
# Windows Serial Driver
Driver=gnu.io.RXTXCommDriver
#Driver=com.sun.comm.Win32Driver
使用RXTXComm.jar或comm.jar其javax.comm.properties的配置不同。
使用comm.jar需要的其他文件为javax.comm.properties和rxtxSerial.dll。Jdk中需要配置短信猫的相关文件,其所在位置分别是comm.jar文件拷贝到jdkjrelibext中;win32com.dll拷贝到jkdjarin中;javax.comm.properties拷贝到jdkjrelib中。使用RXTXComm.jar时所放的位置和comm.jar时一样。
注意事项:在进行代码开发时,只需要引入smslib.jar进行开发即可。Jdk的使用32位的(操作系统为64bit时依然用32bit的jdk)即可。在win2003上进行测试时发现使用RXTXComm.jar时,返回no reponse错误信息,但是换为comm.jar时没有这个问题,原因应该是RXTXComm.jar在适配的时候跟不同的操作系统有一定的关系。