win7 64为下使用rxtx串口通信

不打扰是莪最后的温柔 提交于 2019-12-22 01:30:26

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

说明一下rxtx是javacomm串口通信jar的一个开源的扩展,继承了它,所以,我们在环境搭建好之后,只要把

import javax.comm.*;替换成import gnu.io.*;即可了。

环境的搭建;

首先到地址:http://rxtx.qbang.org/wiki/index.php/Download去下载

我下载的版本是:

解压之后你会看到支持各个平台的文件夹:

找到你的java的运行环境:如找到win64下rxtxSerial.dll文件

如我的java的安装目录下:

D:\Program Files\Java\jre7

 

  • 复制 rxtxSerial.dll 到D:\Program Files\Java\jre7/bin/
  • 复制 RXTXcomm.jar 到 D:\Program Files\Java\jre7/lib/ext/

在你的开发工具中引入lib包中的RXTXcomm.jar

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的串口通信完成

后续有很多开发填坑的文章发布,如果对你有帮助,请支持和加关注一下

http://e22a.com/h.05ApkG?cv=AAKHZXVo&sm=339944

https://shop119727980.taobao.com/?spm=0.0.0.0 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!