使用方法 setReadDataType(type)
和 setSendDataType(type)
来设置手法数据的格式:
//SerialPort.READ_HEX 十六进制
//SerialPort.READ_STRING 字符串
//不设置则默认字符串形式
serialPort.setReadDataType(SerialPort.READ_HEX)
除此之外,你还可以在构建实例时设置接收数据格式:
//SerialPort.READ_HEX 十六进制
//SerialPort.READ_STRING 字符串
//不设置则默认字符串形式
val serialPort = SerialPortBuilder
.setReadDataType(SerialPort.READ_HEX)
.build(this)
//SerialPort.SEND_HEX 十六进制
//SerialPort.SEND_STRING 字符串
//不设置则默认字符串形式
serialPort.setSendDataType(SerialPort.SEND_HEX )
除此之外,你还可以在构建实例时设置接收数据格式:
//SerialPort.SEND_HEX 十六进制
//SerialPort.SEND_STRING 字符串
//不设置则默认字符串形式
val serialPort = SerialPortBuilder
.setSendDataType(SerialPort.SEND_HEX)
.build(this)
目前针对于BLE设备的数据收发暂不支持设置格式,仅支持字符串格式。如果实在需要十六进制的数据格式,暂时可以参考传统设备的处理方式自行实现。
参考代码链接:HexStringToString、StringToHex
使用方法 setReceivedDataCallback(receivedDataCallback)
设置一个接收消息监听器:
serialPort.setReceivedDataCallback { data ->
}
除此之外,你还可以在构建实例时配置监听器:
val serialPort = SerialPortBuilder
.setReceivedDataCallback { data ->
}
.build(this)
在接收消息的时候,也可以选择获取字节数组,方法如下:
serialPort.setReceivedBytesCallback { bytes ->
}
除此之外,你还可以在构建实例时配置监听器:
val serialPort = SerialPortBuilder
.setReceivedBytesCallback { bytes ->
}
.build(this)
使用方法 sendData(data)
发送消息:
serialPort.sendData("Hello World")
serialPort.sendData("0C FF")
所有的十六进制应为两位,不足两位的前方补0,不区分大小写。