Android 手把手教你接入串口功能

一、什么是串口开发

串行接口简称串口,也称 串行通信 接口或 串行通讯接口 (通常指COM接口),是采用串行通信方式的扩展接口串行接口(Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。

二、Android 的串口开发

android 串口通信大部分使用的都是android_serialportApi开源的sdk,有编译好的so文件serial_prot.so,也有SerialPort.c,SerialPort.h等未编译的c++文件,通过cmake方式编译进来

三、开发前的准备

1.将android studio 的SDK Tools 中的CMake,NDK安装好

image

2.将github中我提前准备好的 Demo 下载下来 传送门

四、开始接入

1.新建一个moudle,选择Android Library,新建一个serialport

image
image
image

2.将 cpp 目录,android.serialport 目录 CMakeList.txt 复制到我们的新建moudle

image

3.在moudle中的build.gradle增加红框代码

image

<pre data-language="plain" id="bc0da5ae" class="ne-codeblock language-plain" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959">externalNativeBuild {
cmake {
path 'CMakeLists.txt'
}
}</pre>

4.点击Make Project,然后会生成新的编译文件

image

[图片上传失败...(image-b0e2c0-1637765444724)]

image

5.moudle appbuild.gradle增加

<pre data-language="plain" id="42cec0e4" class="ne-codeblock language-plain" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959">implementation project(path: ':serialport')</pre>

五、使用示例

1、新建 Aprovider extends SerialBaseProvider

image

2.初始化 Serial

image

<pre data-language="plain" id="1c7938f4" class="ne-codeblock language-plain" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"> device 串口设备文件
baudrate 波特率
dataBits 数据位;默认8,可选值为5~8
parity 奇偶校验;0:无校验位(NONE,默认);1:奇校验位(ODD);2:偶校验位(EVEN)
stopBits 停止位;默认1;1:1位停止位;2:2位停止位
flags 默认0</pre>

3.如何发送指令

image

六、后话

以上就是serialprot 接入到 自己的项目啦,有什么不会的可以私信我哈

推荐阅读更多精彩内容