一、什麼是串口開發
串行接口簡稱串口,也稱 串行通信 接口或 串行通訊接口 (通常指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
安裝好
2.將github
中我提前準備好的 Demo
下載下來 傳送門
四、開始接入
1.新建一個moudle
,選擇Android Library
,新建一個serialport
2.將 cpp
目錄,android.serialport
目錄 CMakeList.txt
複製到我們的新建moudle
中
3.在moudle
中的build.gradle
增加紅框代碼
<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-b0e2c0-1637765444724)]
5.moudle app
的 build.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
2.初始化 Serial
<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.如何發送指令
六、後話
以上就是serialprot
接入到 自己的項目啦,有什麼不會的可以私信我哈