說明一下rxtx是javacomm串口通訊jar的一個開源的擴展,繼承了它,因此,咱們在環境搭建好以後,只要把php
import javax.comm.*;替換成import gnu.io.*;便可了。java
環境的搭建;工具
首先到地址:http://rxtx.qbang.org/wiki/index.php/Download去下載post
我下載的版本是:開發工具
解壓以後你會看到支持各個平臺的文件夾:code
找到你的java的運行環境:如找到win64下rxtxSerial.dll文件繼承
如個人java的安裝目錄下:開發
D:\Program Files\Java\jre7get
在你的開發工具中引入lib包中的RXTXcomm.jarit
com1串口通訊的代碼;
public static final byte[] init = new byte[]{0x1B,0x40}; public static final byte[] clean = new byte[]{0x0C}; public static final byte[] pre_display = new byte[]{0x1B,0x51,0x41}; public static final byte[] post_display = new byte[]{0x0D}; public static void displayCustomerScreen(String data, byte[] mode){ try { CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier("COM1"); SerialPort serialPort = (SerialPort)portIdentifier.open("收銀客戶端", 5000); serialPort.setSerialPortParams(2400, 8, 1, 0); serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_NONE); try{ OutputStream outputStream = serialPort.getOutputStream(); if(mode!=null){ outputStream.write(mode); } if(data!=null){ outputStream.write(pre_display); outputStream.write(data.getBytes()); outputStream.write(post_display); } outputStream.flush(); outputStream.close(); } catch (IOException e) { e.printStackTrace(); } finally { serialPort.close(); } } catch (NoSuchPortException e) { e.printStackTrace(); } catch (PortInUseException e) { e.printStackTrace(); } catch (UnsupportedCommOperationException e) { e.printStackTrace(); } }
到此win7 64位下Rxtx替換comm的串口通訊完成
後續有不少開發填坑的文章發佈,若是對你有幫助,請支持和加關注一下