mehome / SerialPortPlus

Android串口开发,基于官方的android-serialport-api增加支持设置奇偶校验、数据位和停止位

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SerialPortPlus

Android串口开发,基于谷歌官方的android-serialport-api增加支持设置奇偶校验、数据位和停止位

使用步骤

第一步:app/build.gradle进行依赖

implementation 'com.azhon:serialport:1.0.0'

第二步:打开串口

  • 1.打开串口
try {
    SerialPortPlus serialPortPlus = new SerialPortPlus("/dev/ttyMT2", 9600);
    //如果你需要设置奇偶校验、数据位和停止位
    //SerialPortPlus serialPortPlus = new SerialPortPlus("/dev/ttyMT2", 9600, 0, 1, 8, 1);
} catch (Exception e) {
    e.printStackTrace();
}
  • 2.设置串口数据回调
serialPortPlus.setReceiveDataListener(this);

第三步:发送数据

serialPortPlus.writeAndFlush(data);

第四步:处理数据

@Override
public void receiveData(ByteBuf byteBuf) {
    //将数据转成十六进制
    String hex = ByteBufUtil.hexDump(byteBuf).toUpperCase();
    //解析数据
    byte[] data = byteBuf.array();
}

这里引入了Netty中的ByteBuf来处理串口数据,如果不懂的小伙伴可以先学习下ByteBuf;使用ByteBuf处理字节数据超乎你想象的舒服

第五步:关闭串口

serialPortPlus.close();

About

Android串口开发,基于官方的android-serialport-api增加支持设置奇偶校验、数据位和停止位


Languages

Language:Java 100.0%