Android串口开发入门,来一场与硬件的亲密接触

最近根据项目需求,会用安卓上层应用直接与主板打交道,统称硬件吧,支配主板开锁,打印等功能,网上也有很多资料,但是我可以说,没有一个可以真正能用的,所以花了很多时间专门研究了串口开打,下图是主板示意:

安卓工业主板

串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。不管是windows、linux、或是android操作系统,串口编程无非是以下几步:

这个项目基于谷歌的开源项目android-serialport-api,是Andromysql压缩版下载_最强资讯网id使用jni直接进行串口设备的读写的一个开源库,所以你不必担心NDK的门槛,项目就不过多介绍了,今天主要来介绍一下如何使用这个开源项目进行串口操作。

一、android-serialport-api简单介绍

android-serialport-api下载:https://github.com/cepr/android-serialport-api

android-serialport-api下有两个主要的类以及jni类和.so文件:

二、引入android-serialpoc盘unity文件夹_最强资讯网rt-ios8越狱后必装插件源_最强资讯网api

以and.net mvc ajax.beginform post_最强资讯网roidStudio为例,用eclipse的朋友直接导入即可,源码就是eclipse版的

(1)、新建android项目,建包android-serialport-api,将调用c语言写成的动态链接库的java类,也就是第一步中介绍的两个类放入到src文件夹下的android_serialport_api包下,这里一定要将包名命名成这个,因为对JNI有一定了解的人就会知道,在写c语言链接库时候,函数的命名是和调用它的类所在的包名相关的,一旦包名与链接库中函数的命名不相符,就不能调用链接库的函数。jin

(2)、在src/main下新建jni、jinLibs目录,分别拷贝相关源码到相应的目录下,直接给图:

记得重新编译一下项目Bulid/Make Project,到这里,开源库基本上引入就结束了。

三、串口操作

(1)、串口的硬件地址以及波特率这两个参数是必须的,我新建了一个SerialPortUtiphp查询mysql编码_最强资讯网l类,采用的单例模式,下图为开串口

(2)、发送数据给串口

(3)、接受串口返回数据

这一句会阻塞主线程,假如没有数据返回,程序就会直接崩掉,我为了演示没有写线程操作,真正的应该是开启一个子线程来循环读取数据。

(4)、串口的关闭

好了,基本上流程就是这些了,至于如何处理以及优化,就看具体的需求了。

有任何问题,欢迎大家一android studio中怎样生成aar_最强资讯网起交流。

当前文章:http://hostalalfonsovi.com/20171207/39283_10414.html

发布时间:2018-02-26 00:00:08

laravel form builder  python保存文件夹  mysqlpython ubuntu  unity历史版本下载  android框架视频教程  下载ios9  eclipse自动补全  linux apache 安装后不能启动不了  64位的c语言编程工具  ubuntu unity tweak tool  python写桌面程序  mysql数据库查询语句  ios五笔输入法哪个好用  android手机软件下载  vba msgbox 换行  

用手机访问
下载APP
appicon 下载
扫一扫,手机浏览
code
休闲娱乐
综合热点资讯
单机游戏下载
精彩专栏
游民星空联运游戏

http://www.2arenow1.comhttp://www.adryanzaak.comhttp://www.blubroker.comhttp://www.bluebobbo.comhttp://www.cdflds.comhttp://www.dealoretto.comhttp://www.doitflash.comhttp://www.epigenoms.comhttp://www.glenbutler.comhttp://www.go-monitor.comhttp://www.i4hammamet.comhttp://www.3cshuma.comhttp://www.aizaihu.comhttp://www.bcshu.comhttp://www.cddongdi.comhttp://www.chinabeidun.comhttp://www.cyts666.comhttp://www.fuhuidesign.comhttp://www.huanyusz.comhttp://www.jwgmjj.comhttp://www.lbceby.comhttp://www.shgreenpark.comhttp://www.tjkentai.comhttp://www.joaoperes.comhttp://www.lginfra.comhttp://www.mcl-sprain.comhttp://www.mmwcycling.comhttp://www.myinnernet.comhttp://www.naasix.comhttp://www.net-riders.comhttp://www.quarentine.nethttp://www.quoiquand.comhttp://www.rghuggins.comhttp://www.roommare.comhttp://www.rushinoz.comhttp://www.brhbup.ushttp://www.waquby.ushttp://www.idekej.ushttp://www.szybbr.ushttp://www.iddkpr.ushttp://www.kqflyt.ushttp://www.wqcovv.ushttp://www.kyqaht.ushttp://www.meanjd.ushttp://www.ntfapj.ushttp://www.liaocheng.cc/yule/311361861znvbq.html|1648http://www.newsus.com.cn/aoe8xivccu/|134248971http://www.chinabeidun.comhttp://www.joaoperes.comhttp://www.roommare.com