• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 12
    • 下载费用:30 金币  

    重庆时时彩全年数据: 采用JNI调用方式在ANDROID系统中使用LTEMODEM的方法.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN201410224454.7

    申请日:

    2014.05.26

    公开号:

    CN103970545A

    公开日:

    2014.08.06

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||著录事项变更IPC(主分类):G06F 9/44变更事项:申请人变更前:天津七一二通信广播有限公司变更后:天津七一二通信广播股份有限公司变更事项:地址变更前:300462 天津市滨海新区经济技术开发区西区北大街141号变更后:300462 天津市滨海新区经济技术开发区西区北大街141号|||实质审查的生效IPC(主分类):G06F 9/44申请日:20140526|||公开
    IPC分类号: G06F9/44 主分类号: G06F9/44
    申请人: 天津七一二通信广播有限公司
    发明人: 袁杰; 王智超; 张青平; 姚金龙; 张洪岩; 时勇
    地址: 300462 天津市滨海新区经济技术开发区西区北大街141号
    优先权:
    专利代理机构: 天津中环专利商标代理有限公司 12105 代理人: 莫琪
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201410224454.7

    授权公告号:

    |||||||||

    法律状态公告日:

    2017.03.29|||2017.03.22|||2014.09.03|||2014.08.06

    法律状态类型:

    授权|||著录事项变更|||实质审查的生效|||公开

    摘要

    本发明涉及采用JNI调用方式在Android系统中使用LTEModem的方法,以运行于TIDM3730/AM3715基带板上的Android系统为操作平台,通过JNI调用方式直接从应用层来处理EM350LTEModem数据,对EM350LTEModem进行控制,所述方法包括步骤:1、确定开发框架:2、硬件连接LTEModem通过USB口与运行Android系统的TIDM3730/AM3715基带板进行连接;3、选择支持AT命令操作方式的LTEModem;4、应用程序通过Java输入输出流的方式对基带板直接连接具备串口或者USB口的LTEModem上的串口,或者是对基带板连接LTEModem的USB口模拟出的串口进行JNI调用,完成与LTEModem的AT命令交互,有益效果为:减少移植开发电话系统的难度,从而为快速应用LTEMode到Android系统铺平道路,降低了开发难度,缩短了开发周期,节约了人力成本,为终端厂商快速将LTE技术应用于Android提供了可能。

    权利要求书

    权利要求书
    1.  采用JNI调用方式在Android系统中使用LTE Modem的方法,其特征在于,以运行于公司自主研制的TI DM3730/AM3715基带板上的Android系统为操作平台,通过JNI调用方式直接从应用层来处理EM350 LTE Modem数据,对EM350 LTE Modem进行控制,所述方法包括以下步骤:
    (a)确定开发框架:
    层1:硬件层,该层要求选用的LTE Modem和TI DM3730/AM3715基带板必须具有UART口或者具有USB接口,LTE Modem通过UART或者USB接口连接基带板上的处理器;
    层2:利用Linux内核和驱动层,Linux系统原生支持UART设备、USB设备,其驱动程序是完全开源的特征,连接支持UART或者USB两种接口的LTE Modem利用该LTE Modem提供的UART或者USB开源驱动,采用UART连接方式或USB连接方式,使得LTE Modem以串口设备方式挂接在Linux系统上;
    层3:JNI调用实现,这部分直接借用Google的另外一个开源项目Accessing serial ports for Android,利用该开源项目实现以JNI调用方式,实现Java应用程序层对Linux层串口设备的操纵;该项目全部源代码均可从Google开源项目中获取,通过该方法位于Java应用层的Android程序可以直接操作Linux层的串口设备,达到控制硬件系统层LTE Modem的目的;
    层4:Java应用层,该层由厂商需要根据具体功能具体去实现;
    (b)硬件连接LTE Modem通过USB口与运行Android系统的TI DM3730/AM3715基带板进行连接; TI DM3730/AM3715基带板的USB1_D0---D7提供数据信号, USB1_STP、USB1_CLK、USB1_DIR、USB1_NXT提供时钟及控制信号,分别对应连接USB芯片USB3343,从USB3343接口出来的DP和DM信号满足USB协议,直接连接EM350 USB_D+和USB_D-引脚;
    LTE Modem通过UART串口连接方式,TI DM3730/AM3715基带板具备3个UART接口,根据实际需要,选择了UART1与LTE Modem的UART串口进行连接;TI DM3730/AM3715基带板的UART1_RX引脚通过一个电平转换芯片74ALVC164245连接LTE Modem的UART_TXD引脚,使LTE Modem发送的串口数据被DM3730/AM3715收到;
    TI DM3730/AM3715基带板的UART1_TX通过电平转换芯片74ALVC164245与LTE Modem的UART_RXD相连,使DM3730/AM3715将命令发送给LTE Modem;电平转换芯片的作用是使DM3730/AM3715 3.3V接口和EM350 1.8V/3.0V接口电平保持一致;
    (c)选择支持AT命令操作方式的LTE Modem;
    (d)应用程序通过Java输入输出流的方式对基带板直接连接具备串口或者USB口的LTE Modem上的串口,或者是对基带板连接LTE Modem的USB口模拟出的串口进行JNI调用,完成与LTE Modem的AT命令交互。

    2.  如权利要求1所述的采用JNI调用方式在Android系统中使用LTE Modem的方法,所述TI DM3730/AM3715基带板由CPU,DM3730/AM3715,内存单元、电源管理单元、USB连接电路、UART连接电路、摄像头、重力加速度传感器、GPS定位传感器、LCD显示触控屏、键盘电路、MIC和Speaker模拟电路、SD卡支持电路构成,其特征在于,必须具有UART口或者具有USB接口 。

    3.  如权利要求1所述的采用JNI调用方式在Android系统中使用LTE Modem的方法,其特征在于,硬件层,该层要求选用的LTE Modem必须为具备UART接口或者具备能模拟出UART接口的USB口的Modem。

    说明书

    说明书采用JNI调用方式在Android系统中使用LTE Modem的方法
    技术领域
    本发明涉及LTE Modem,特别涉及采用JNI调用方式在Android系统中使用LTE Modem的方法,本方法将Google开源项目中对串口设备的JNI调用方式成功的应用到了对Modem的控制上,极大的减少了Android设备更换Modem后必须全部实现Android本地框架中硬件抽象层接口的工作,特别适合对产品开发进度有严格要求,或者需要严格控制人力成本的情形。
    背景技术
    Android开发框架图如图1所示。将LTE Modem应用在Android系统中传统的开发方式是这样的:
    层1:硬件系统层。主要是构建LTE Modem和运行Android系统基带板的物理连接。这部分需要根据选用的LTE Modem和基带板的芯片处理器型号具体实现。本专利采用的LTE Modem为华为鼎桥的EM350,基带板处理器为TI的DM3730/AM3715。
    层2:Linux内核及驱动层。Linux内核及其内驱动都属于Linux开源项目的范畴,里面的驱动都可以直接拿来使用。但是由于4G技术在国内的应用才刚刚开始,LTE Modem目前种类不多,其Linux内核的开源驱动难以获得。这是出现在厂商前面的第一个难题。
    层3:Android架构层,大体可分为Java框架和C程序框架。该层的作用是承上启下,其中Java框架向上对接Java应用程序,为Java应用程序提供系统API调用;C程序框架向下对接Linux内核及驱动,最终通过驱动完成对硬件系统的操控。虚线框里的Android运行环境完成沟通Java框架和C程序框架的功能。
    在本层中Android运行环境为Google自维护项目,该代码不公开或公开的很少。C框架中的硬件抽象层为厂商自行独立开发部分。这部分根据LTE Modem的型号需要具体修改。同样由于4G技术刚开始应用,目前Android Java框架和C程序框架还有很多工作厂商自行根据选用的LTE Modem进行修改。
    考虑到Android框架层的复杂程度,所以对厂商来说,这部分的工作量是非常巨大的,需要很高的技术实力,而且修改不当极易导致Android系统不稳定或者耗电增加等不良后果。
    层4:Java应用层。该层根据使用需求,分??楸嘈闯绦?,充分利用Android框架层提供的API去实现各个功能,最终打包出Android APK应用程序,该程序最终将安装在Android系统上供用户使用。
    根据以上分析,厂商按照传统的Android应用开发方式要面临的工作将会是极其巨大的,需要编写LTE Modem在Linux、Android C框架下的驱动,同时还需要编写Java应用程序满足用户需求。在这其中,考虑到Android系统框架的复杂性还要特别注意Android系统稳定性、耗电等诸多问题。
    因而需要另辟蹊径,采用一种简洁的方法来实现在Android系统中直接使用LTE Modem。避免Android设备更换Modem后必须全部实现Android本地框架中硬件抽象层接口的工作,进而适合对产品开发进度有严格要求,控制人力成本,提高紧急效益。
    发明内容
    本发明的目的就是为克服现有技术的不足,提供一种采用JNI调用方式在Android系统中使用LTE Modem的方法,以在最大程度上减少移植开发电话系统部分的难度,从而为快速应用LTE Mode到Android系统铺平道路。采用一种简洁的方法来实现在Android系统中直接使用LTE Modem。避免Android设备更换Modem后必须全部实现Android本地框架中硬件抽象层接口的工作,进而适合对产品开发进度有严格要求,控制人力成本,提高紧急效益。
    本发明是通过这样的技术方案实现的:采用JNI调用方式在Android系统中使用LTE Modem的方法,其特征在于,以运行于公司自主研制的TI DM3730/AM3715基带板上的Android系统为操作平台,通过JNI调用方式直接从应用层来处理EM350 LTE Modem数据,对EM350 LTE Modem进行控制,所述方法包括以下步骤:
    (a) 确定开发框架:
    层1:硬件层,该层要求选用的LTE Modem和TI DM3730/AM3715基带板必须同时具有UART口或者同时具有USB接口,LTE Modem通过UART或者USB接口连接基带板上的处理器;
    层2:利用Linux内核和驱动层,Linux系统原生支持UART设备、USB设备,其驱动程序是完全开源的特征,连接支持UART或者USB接口的LTE Modem,利用该LTE Modem提供的UART或者USB开源驱动,采用UART连接方式或USB连接方式,使得LTE Modem以串口设备方式挂接在Linux系统上;
    层3:JNI调用实现,这部分直接借用Google的另外一个开源项目Accessing serial ports for Android,利用该开源项目实现以JNI调用方式,实现Java应用程序层对Linux层串口设备的操纵;该项目全部源代码均可从Google开源项目中获取,通过该方法位于Java应用层的Android程序可以直接操作Linux层的串口设备,达到控制硬件系统层LTE Modem的目的;
    层4:Java应用层,该层由厂商需要根据具体功能具体去实现;
    (b)硬件连接LTE Modem通过USB口与运行Android系统的TI DM3730/AM3715基带板进行连接; TI DM3730/AM3715基带板的USB1_D0---D7提供数据信号, USB1_STP、USB1_CLK、USB1_DIR、USB1_NXT提供时钟及控制信号,分别对应连接USB芯片USB3343,从USB3343接口出来的DP和DM信号满足USB协议,直接连接EM350 USB_D+和USB_D-引脚;
    LTE Modem通过UART串口连接方式,TI DM3730/AM3715基带板具备3个UART接口,根据实际需要,选择了UART1与LTE Modem的UART串口进行连接;TI DM3730/AM3715基带板的UART1_RX引脚通过一个电平转换芯片74ALVC164245连接LTE Modem的UART_TXD引脚,使LTE Modem发送的串口数据被DM3730/AM3715收到;
    TI DM3730/AM3715基带板的UART1_TX通过电平转换芯片74ALVC164245与LTE Modem的UART_RXD相连,使DM3730/AM3715将命令发送给LTE Modem;电平转换芯片的作用使使DM3730/AM3715 3.3V接口和EM350 1.8V/3.0V接口电平保持一致;
    (c)选择支持AT命令操作方式的LTE Modem;
    (d)应用程序通过Java输入输出流的方式对基带板直接连接具备串口或者USB口的LTE Modem上的串口,或者是对基带板连接LTE Modem的USB口模拟出的串口进行JNI调用,完成与LTE Modem的AT命令交互。
    本方法有益效果即为:能最大程度上减少移植开发电话系统这部分的难度,从而为快速应用LTE Mode到Android系统铺平道路。通过JNI调用方式在运行Android系统的TI DM3730\AM3715基带板中使用华为鼎桥LTE Modem EM350,降低了开发难度,缩短了开发周期,节约了人力成本,为终端厂商快速将LTE技术应用于Android提供了可能。
    附图说明
    图1为Android开发框架图;
    图2为采用JNI调用方式开发框架图;
    图3为AT命令数据流向图;
    图4为AT命令处理流程图;
    图5为硬件连接示意图;
    图6为示例AT命令流图。
    具体实施方式
    为了更清楚的理解本发明,结合附图和实际实施过程详细描述:
    图1所示为经典Android开发框架图。
    比如我们想将OV3640像摄像头应用于我们终端产品的Android系统上。我们就必须完成从硬件系统、驱动开发、Android系统硬件抽象层开发、Java应用层开发等各个部分。工作量包括硬件画图、硬件调试、驱动调试、硬件抽象层适配,Java应用层编写。再加上我们需要与其他厂商产品终端体现差异化所要做的工作,故而按照经典Android开发框架图开发方式进行开发,其开发周期长、工作量大、研发成本相对较高。
    相比较Android经典开发模式,采用JNI调用方式来开发会更加便利。如图2和图5所示:
    1、图5中的LTE Modem(EM350)作为硬件??槲挥谕?中的Android开发框架图的硬件系统部分。LTE Modem(EM350)必须与我们开发平台的基带部分(见图5中的处理器基带板,TI DM3730/AM3715基带板)通过串口或者USB口相连,使两者之间可以通过串口方式进行数据交互,波特率为115200。
    其次DM3730仍需要一个GPIO(GPIO3)为EM350提供复位信号,方便对EM350进行重启操作;需要一个GPIO(GPIO1)读取EM350的睡眠和唤醒状态;同时仍需要一个GPIO(GPIO2)去设置EM350能使其进入睡眠模式或者被唤醒(图5示中GPIO标号仅仅是为了叙述方便,使用时应根据需要自行配置)。
    2、我们不需要为LTE Modem撰写大量驱动,因为LTE Modem挂接在具备UART串口或者USB口的TI DM3730/AM3715基带板上,我们可以很方便的利用Linux框架中很成熟的串口设备驱动方式去挂载LTE Modem。Linux作为世界最大的开源操作系统,很多厂家和第三方开发者都会发布其Linux版本的驱动程序,而且这一切都是开源的。建议先联系厂家获取驱动,这样的驱动比较稳定,可靠性高,将驱动代码按照厂家说明放入Linux相应的源码文件夹内,重新编译出Linux内核替换原来Android系统的Linux内核即可。这里推荐一款支持中国4G标准TD-LTE Modem,即鼎桥的EM350。鼎桥提供了这款芯片完善的驱动支持,很方便大家使用。
    3.当LTE Modem挂载到Linux内核上后,我们就可以继续进行JNI串口调用的实现了。这里我们要充分利用Google开源项目中JNI串口调用项目中的开源成果。JNI串口调用层主要实现的功能包括识别串口设备、打开指定的串口设备、关闭串口等功能。首先要按照JNI语法规则编写JNI调用文件(当然我们无需编写,因为Google开源项目中已经提供给了我们),文件必须实现串口打开和关闭功能。然后经过private native static声明暴露给Java应用程序,这样java应用程序可以直接调用JNI代码,从而完成对串口的操控。
    以上几个层次无需我们过多的精力,绝大多数的工作已经由LTE Modem厂商(驱动程序)和Google开源项目(JNI串口调用)帮助我们完成了,这样我们可以集中精力进行Java应用程序的开发。如此一来与经典Android应用开发相比,我们可以节省大量的时间,极大的降低工作量。
    4、在图3 AT命令数据流向图中的Java应用程序需要建立EM350ActionBuffer、readBuffer、ATreceiveBuffer三个缓冲区。EM350ActionBuffer用来将响应的Android UI操作,例如拨打某个号码等转化来的AT命令进行存储,在定时器的作用下通过串口处理??榉⑺透鳨M350。同时在Java应用程序部分还有一个readBuffer缓存一直在读取EM350发送回来的串口数据,这些数据经过解析存储在ATReceiveBuffer缓存中,等待着被执行,如通知DM3730有电话或者短信呼入请处理等等。图3 AT命令数据流向图描述出了EM350??楹虳M3730内软体的数据交互过程。
    5、具体的AT命令处理流程如图4AT命令处理流程图所示。借助Android强大的API工具,Java应用程序开发一层完成与串口的数据交互,包括建立流文件(一般为字节流)、从串口读数据到流文件(接收AT报文)、从流文件写入数据到串口(发送AT命令),用户界面设计,对LTE Modem传上来的AT报文进行处理,实现业务逻辑,组装AT命令等功能。示意流程图如图4所示。
    6、图6示例AT命令流图给出了EM350的注册流程。Java应用程序将AT命令通过串口发送给EM350,而EM350将回复信息(其中有一部信息如信号强度等为EM350主动发送)发送给Java应用程序。利用这一流程可以检验Java应用程序的功能实现是否正确和完善。
    本发明方法实现了通过JNI调用方式在运行Android系统的TI DM3730\AM3715基带板中使用华为鼎桥LTE Modem EM350。这种方法可以极大的降低开发难度,缩短开发周期,节约人力成本,为终端厂商快速将LTE技术应用于Android提供了可能。
    以上描述仅用于说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。
    根据上述说明,结合本领域技术可实现本发明的方案。

    关 键 词:
    采用 JNI 调用 方式 ANDROID 系统 使用 LTEMODEM 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:采用JNI调用方式在ANDROID系统中使用LTEMODEM的方法.pdf
    链接地址://www.4mum.com.cn/p-6142033.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03