1.基于android的某应用创新方案设计应用题

基于Android移动设备的传感器技术应用研究 - 传感器 - 电子工程世界网
基于Android移动设备的传感器技术应用研究
18:07:16来源: 互联网 关键字:
&&& :随着经济的发展,Android系统在信息、通信系统特别是移动设备方面应用十分。比如:、三星等智能手机大多的是Android系统。
  Android系统提供了的和是基于硬件的,其中有三个传感器即使基于硬件的也是基于软件的传感器。文章根据Android系统的五个的应用,进行了论述研究。
  随着手机等移动设备的发展,人们对移动设备的要求不仅仅限于接打电话、QQ等传统,要求智能手机具备更加完善娱乐商务功能,目前传统计算机的应用功能基本全部实现智能手机上。
  Android作为一种流行系统平台,令人津津乐道的特性数不胜数,其中最为耀眼的是Android平台的各种传感器。
  二、基于Android移动设备的传感器技术概述
  (一)Android平台简介
  Android的中文翻译是安卓,本来的意思是机器人,是Google公司基于Linux自由及开放代码的操作系统,这种操作系统较好的整合应用软件、、操作系统间件,打造了一个移动终端开放完整的移动软件,在日正式开发成功面试。Android(安卓)最初是由Andy Rubin开发的一种操作系统,主要支持的移动设备是手机。2005年8月,Google收购安卓并未安卓,2007在G o o g l e的领导下改良A n d r o i d系统,使Android成为一种基于Linux自由及开放代码的操作系统,除了支持智能手机还支持平板电脑等移动设备。Android是完全开放的操作系统,它的迅速发展使其趋向,Google公司强大的互联网功能和服务,Android的移动技术应用的前景非常美好。
  (二)基于Android平台传感器概述
  被测量信号输入的第一道关口,是传感器系统中的元件组成部分,它包括和连接的敏感元件和转换元件,但是传感器系统却是组合某种信息处理能力元件的传感器。传感器是一种检测装置,是实现移动设备自动控制、的前提装置。Android平台应用的传感器技术有技术、技术、传感器技术和加技术等诸多耀眼的传感器技术,传感器非常强大,为用户提供了便利。
  三、基于Android移动设备的传感器技术应用
  (一)基于Android移动设备的器技术应用
  A n d r o i d 平台的传感器是Android基于硬件的传感器,它能够有效的跟踪手机、电脑等移动设备的运动状况,在移动设备上应用普及,Android平台的移动设备极少有不装加速度,这种加速度传感器目前已经成为移动应用不可分割的一部分,比如:三星、摩托罗拉、游戏平台等诸多设备都采用这种加速度传感器。虽说利用加速度传感器特性已经成为Android平台开发移动应用的主流趋势,但是加度度传感器在开发应用过程中存在诸多问题。比如:重复劳动量大、设计方案通用性差和代码复用率低等。针对加速度传感器存在的这些问题,结合加速度传感器的工作原理提出了相应的解决这些问题的通用设计方案,这个方案设计的目的是增强软件的复用性、缩短应用的开发、提高开发加速度传感器的。
  1.Android加速度传感器的工作原理
  检测物体运动加速度的变化,可以轻而易举知道物体的运动状态,Android加速度传感器具有检测移动设备在三维空间加速度的功能,可以通过知道移动设备的运动状态获取移动设备加速度传感器的参数,以此控制三维空间中移动设备运动的方式。
&&& 2.Android平台加速度传感器的通用
  设计方案影响加速度的因素有两个,一个是加速度的大小一个是加速度的方向,这两个因素都是由移动设备的运动状态决定的。
  在设计Android平台加速度传感器的通用设计方案时,只需考虑移动设备移动的加速度大小和移动方向便可。Android平台加速度传感器的三维空间和移动设备平面绘图坐标系的不同之处在于当手机等移动设备屏幕方向进行横竖屏切换时,绘图坐标系的方向随着移动设备的屏幕方向旋转,但是加速度传感器坐标系的坐标轴方向却保持不变。在加速度传感器实际应用中,为了把加速度传感器的加反映在移动设备的运动状态上,必须切换加速度传感器的坐标系方向使之与绘图坐标系方向保持一致,这样移动设备的屏幕会出现两种状态的显示情况,坐标系处理方式存在差异,导致设计方案不能通用。在设计加速度传感器的坐标系的方案时,可以将移动设备的屏幕方向固定横或者竖屏,通过避免应用程序运行过程中移动设备屏幕方向的切换,简化两种坐标系方向转换过程中的处理逻辑。这种简化只需考虑一种坐标系变换处理的方式,解决了重复劳动量化大等问题,提高开发效率,但是需是移动设备屏幕方向不同,坐标系变换处理的方式也不同。
  (二)基于Android移动设备的光技术应用
  1.光电传感器的工作原理
  基于Android移动设备的光电传感器的工作原理的基础是,是被测量的移动设备的变化转换成光信号的变化,转换成的光电信号通过光电传感器的光电转换元件把它们变换成电信号。
  2.光电传感器的的应用
  光电传感器是应用光电元件作为检测移动设备变化元件的传感器,它包括光源、光电元件和光学通路三大部分,具有检测反应快、可测量参数多、结构简单、形式灵活多样、非接触和精度高等诸多优点。经常用在移动设备检测、烟尘浊度检测、带型材料加工中的偏离正确位置大小和方向的检测装充填物高度检测等领域。
  四、结束语
  文章先了基于Android平台的简介、基于Android移动设备传感器技术简介,介绍了基于Android移动设备所具有的各种功能强大的传感器,然后详细论述了基于Android移动设备的加速度传感器和光电传感器。
编辑:鲁迪 引用地址:
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
关注eeworld公众号快捷获取更多信息
微信扫一扫加关注
芯片资讯 锐利解读
热门关键词
大学堂最新课程
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
热门资源推荐
频道白皮书您好, []|
应用创新大奖 行客记事安卓V1.9全面评测
随时随地记录生活   我们点击新建笔记后,首先需要输入事件名称以及事件标签,之后还需要选择存储的文件夹位置,默认为工作,还包含了娱乐、生活等等。在常规的记录功能之外,行客记事还增加了语音记事以及添加附件功能,让记录方式更加完整。详细信息/设置内容  同时,我们也可以将照片或录音加入其中,这个功能对于微博控们来说极为受用,可以第一时间将想分享的内容发送到微博中,同时也可以存储在本地或云端,节省了时间。在标签列表页中,我们可以根据自己设定的标签类型快速定位记事内容。例如:重要、待办等等。文件夹组/添加文件夹  下面为大家具体讲解一下行客记事的云同步功能。我们可以通过行客记事的云应用技术,将自己想保存的笔记信息同步到云端服务器,因为在Android系统中,信息安全问题已经成为了众人皆知的隐患。现在,一旦资料丢失,我们只需要登陆行客记事的账号,连接好网络,便可以顺利的查看到资料内容库。标签搜索/新建内容页面  点评:根据人们的需要,行客记事Android版V1.9可谓是满足了我们在记录内容上的各种需求。除了传统的文字记录外,还支持添加附件,加入语音以及照片文件,随时随地记录生活中的点点滴滴,好玩的朗读记事功能也增加了该软件的乐趣。同时也迎合了大趋势,将微博分享等热门功能加入其中。安全的云同步也能让我们更好的保存资料信息。这一切只需一个账号便能轻松搞定。推荐用户下载体验。
[责任编辑:leizou]
(请登录发言,并遵守)
如果你对数码频道有任何意见或建议,请到交流平台反馈。【】
新闻排行财经科普科技数码
Copyright & 1998 - 2017 Tencent. All Rights Reserved基于Android平台的物联网网关方案设计
基于Android平台的物联网网关方案设计
中国已成为第一大移动互联网市场,在移动互联网和物联网的市场非常广阔,这将使得物联网应用借助移动互联网平台深入到各个领域,实现泛在的接入。目前移动互联网平台常见的嵌入式操作系统主要足Linux、WindowsCE、MeeGo、Android、Palm等;其中Android系统的网络集成性很高,被公认为是一个基于Linux内核并针对移动设备的操作系统。针对移动终端融合物联网具有很大的意义,而物联网接入
中国已成为第一大移动互联网市场,在移动互联网和的市场非常广阔,这将使得物联网应用借助移动互联网平台深入到各个领域,实现泛在的接入。目前移动互联网平台常见的嵌入式操作系统主要足Linux、WindowsCE、MeeGo、Android、Palm等;其中Android系统的网络集成性很高,被公认为是一个基于Linux内核并针对移动设备的操作系统。针对移动终端融合物联网具有很大的意义,而物联网接入互联网的瓶颈是 本文提出了基于Android平台、采用蓝牙连接物联网的网关方案,从而有效避免了物联网网关的开发瓶颈。1 基于Android平台的网关简介星云测控系统是由一个WSN主节点和很多WSN测控节点构成一个分布式的测控系统,用于野外的暂时和长期测量、桥梁检测和大型结构瞬态测试等。基于Android平台蓝牙串口通信的星云测控(WSN)网关结构示意图如图1所示:网关采用基于Android的带有蓝牙和Wifi/WLAN功能的智能平板,采用蓝牙连接基于STM32W的WSN测控系统主节点;网关将实现显示、存储、人机交互、远距离通信和网络通信等功能。网关软件在Android2.3操作系统下运行,程序在Android Eclipse下开发完成。其工作过程大致为:将网关蓝牙与ZigBee主控节点蓝牙进行配对、连接和数据传输,同时网关通过同一局域网的WiFi连接至远程终端,实现对ZigBee网络测控信息的显示、存储和控制等,实现网关的通信和管理,完成WSN和互联网的双向数据传输和控制。2 Android平台的物联网网关的设计方案网关通过蓝牙串口实现与WSN中心节点间的通信,在Android平台上实现WSN节点信息管理并通过Andrid的网络资源实现互联网接入,从而在WSN与互联网之间搭建一条透明的数据传输通道,完成对无线节点的数据进行远程和实时的监测控制。图2为基于Android平台的网关设计框图,Android平台下的物联网网关的软件实现,需要完成以下步骤:(1)设置蓝牙和Wi&Fi;(2)发现已经配对或者附近的蓝牙设备;(3)连接设备;(4)在不同设备之间传输数据;(5)使用Wi&Fi通过无线路南连接同一无线局域网,通过Socket建立基于TCP/IP协议的网络通信。(6)网关实现对WSN的管理。图3为网关工作流程。 Android的物联网网关的设计实现了以下功能:启动蓝牙、启动Wi&Fi、蓝牙设备是否可见、搜索蓝牙、蓝牙设备的配对与连接、蓝牙串口通信和网络通信和网关管理。3 Android网关的蓝牙串口通信和网络通信3.1 Android网关的蓝牙串口通信&蓝牙&是一种短距离的无线连接技术标准的代称,实质内容就是要建立通用的无线电空中接口及其控制软件的公开标准。利用&蓝牙&技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与因特网之间的通信,从而数据传输变得更加迅速高效,为无线通信拓宽道路。Android的蓝牙(Bluetooth)协议栈使用BlueZ (Linux官方的Bluetooth栈)来实现对GAP、SDP和RFCOMM等应用规范提供支持,并获得了SIG认证。BlueZ的RFCOMM提供Bluetooth上的串行仿真,这使得串行端口应用程序和协议不加更改地在Bluetooth上运行。RFC OMM模块和用户模式dund的后台进程实现了Bluetooth拨号网络。Bluetooth规范支持针对Bluetooth HCI数据分组的UART(通用异步接收器/传送器)和USB传输机制。BluZ栈同时支持这两个传输机制(drivers/Bluetooth/)。图4为Android Bluetooth部分的关系图。Android包含了对蓝牙协议栈的支持,这使得蓝牙设备能够无线连接其他蓝牙设备交换数据。Android的应用程序框架提供了访问蓝牙功能API,实现点对点或点对多点的无线交互功能。使用蓝牙API,一个Android应用程序能够实现下列功能:扫描其他蓝牙设备、查询本地蓝牙适配器用于配对蓝牙设备、建立RFCOMM信道、通过服务发现连接其他设备、数据通信和管理多个连接。图5为本设计的蓝牙串口通信流程图。实现了蓝牙设备打开、可见、搜索和连接管理。3.2 Android网络通信Android完全支持JDK本身的TCP、UDP网络通信的API,可以使用SeverSocket、Socket来建立基于TCP/IP协议的网络通信,也可以使用DatagramSocket、Datagrampacket、MulticastSocket来建立UDP协议的网络通信。本设计采用TCP/IP协议来实现网络通信,通信流程如图6所示。本设计只实现客户端编程,服务端用SocketTool TCP/IP通信调试工具V2.2在PC端建立。使用Socket来实现客户端的步骤如下:(1)通过IP地址和端口实例化Socket,请求连接服务器。(2)获取Socket上的流以进行读写。(3)把流包装进BufferedReader的实例。(4)对Socket进行读写(5)关闭打歼的流程。关键代码如下:4 网关的管理功能及实现网关在应用层实现对WSN的管理,主要包括安全认证、时间统一、监测数据采集、节点定位和远程传输功能,从而实现对现场的实时临控和管理。功能设计如下:(1)安全认证:协调节点在安全认汪中,将申请节点的ID发给网关,网关查找配置表中的授权入网节;如果该节点ID在表中,则通知协调节点允许入网,否则不允许入网。同时,网关可以显示、添加或修改节点配置表中的授权入网节点。如图8&1所示,网关插入配置表信息,该实验为四个节点组成的ZigBee网络,节点编号分别为BC94D、BCE91、BC204和BCF51。ZigBee组成的无线传感器网络实现点对点通信,网关可以采集到节点数据信息,并用绿灯显示该网络实现的是1号节点和3号节点之间的点对点通信,红灯表明处于非工作状态。(2)时间统一:在进行时间统一的过程中,首先通过NTP协议对网关校时,并以此时间为基准,把时间发给协调器节点,从而校准协调节点的时间和网内子节点的时间,实现网络中节点的时间统一。如图7(a)所示,网关的最下方显示了NTP协议实现的校时。(3)监测数据采集:在进行节点定位的过程中,网关可以采集节点数据、提取节点号和RSSI值。如图7(h)所示,上方滚动串口显示了收到的来自ZigBee无线传感器网络的串口数据。(4)节点定位:ZigBee网络使用RSSI测距法实现节点定位,网关采集节点RSSI值解算出了节点大概位置。(5)存储监测数据:接收节点监测数据并定期以文件形式保存到本地的SD卡中。如图8&2截取的存储至SD卡的数据传输数据,命名为Bluetooth.txt。5 测试结果系统所需的硬件平台为:Android平板电脑一部、BMX蓝牙模块、PC机一台。本实验所需的软件平台为:SSCOM32串口调试助手、Socket Tool网络调试和TCP/UDP开发丁具、Ecplise JAVA开发环境和Android SDK开发包。网络通信设置的IP地址为:192.168.0.190,端口号为:30000。运行主要结果如图8所示。图8 (a)为设备连接界面,主要实现蓝牙连接和网络连接,触发搜索设备按钮显示设备列表,点击所需设备名称建立蓝牙连接。触发wifi按钮建立网络连接,触发测试按钮,测试通信信道是否建立,建立成功显示&success connection&。该网关实现了双向数据传输和网关管理,如图8(b),8(c)。传输过程分为以下三种情况:(1)蓝牙设备发送数据给Android网关和远程终端,Android网关和远程终端显示&xi&antechnological universitv&表明测试成功。(2)Android网关发送数据给蓝牙设备和远程终端,蓝牙设备和远程终端显示&I am Lei Bin&表明测试成功。(3)远程终端发送数据给Android网关,Andiroid网关显示&Success of socket communication&表明测试成功。网络通信结果如图8(d)所示。6 结束语由于采用蓝牙串行通信技术连接物联网,避免了在Android平台上的硬件开发,使得在对现有Android智能平台无需硬件改造及编写底层驱动即可实现无线传感网络管理及和互联网间的数据传输,大大降低了物联网网关的应用难度和成本。在该设计的基础上,可以进一步实现对无线传感器网络的实时控制,这使得在移动终端融合物联网应用成为可能。
型号/产品名
深圳市佳兴时代科技有限公司
深圳市佳兴时代科技有限公司
深圳市鹏华威电子有限公司
惠尔讯股份有限公司安徽企搜科技公司前身为合肥奥昌网络科技有限公司,14年成立,简称奥昌科技。奥昌科技涉及到基于IOS和Android、WP等系统的从咨询策划、应用设计、交互设计到系统开发、营销推广、运维维护;业务包含如展会互动、城市宣传、企业/商品展示、新媒体/电子杂志、学校/教育、医疗、娱乐游戏、移动电商、LBS社交等类型的APP.公司目前拥有一支技术过硬的开发团队,并且拥有丰富的移动互联网行业项目开发经验
公司通过一体化的解决方案,将企业的品牌、产品、广告,网站推广等业务转化为移动终端的App应用程序,从而让用户能够随时随地了解企业,了解企业文化,熟悉企业服务.
我们坚持为客户提供定制化的移动终端品牌展示及推广方案,在移动应用程序中巧妙植入品牌的信息,让用户在获取实用价值的同时,与企业产生互动,突出品牌特色,了解品牌文化及品牌内涵,加强用户对品牌的印象和认知.
奥昌科技始终秉乘正直、诚信、创新、合作、进取的价值观,争取为每个客户提供最优质的服务.对于公司的每一个客户,我们始终坚持客户第一的原则,并乐意与客户长期愉快地合作.
RELATEED CONSULTING
选择下列产品马上在线沟通
你可能遇到了下面的问题
作者:admin
发表时间: 08:00:00
来源:企搜科技  【摘 要】介绍了一种基于Android的车联网车载终端的实现方法,其中包括硬件设计、开发环境搭建、Android下Li" />
免费阅读期刊
论文发表、论文指导
周一至周五
9:00&22:00
基于Android的车联网车载终端的设计
  【摘 要】介绍了一种基于Android的车联网车载终端的实现方法,其中包括硬件设计、开发环境搭建、Android下Linux C程序的运行环境配置、Android应用与C程序进程间通讯的实现方法。本方法具有开发周期短、开发成本低、用户界面美观友好、稳定可靠等特点。 中国论文网 /8/view-4723096.htm  【关键词】Android 嵌入式 车联网车载终端   1 引言   芯片技术的发展让嵌入式处理器的性能不断提高,当嵌入式处理器的处理能力不再是系统设计的主要问题的时候,良好的用户界面、多媒体支持等渐渐成为人们在嵌入式控制系统设计中考虑的因素。   Android[1]构建于Linux系统之上,而Linux已经在一些苛刻的环境下使用和测试了数十年,被证明是一个非常安全和稳定的系统。Linux可以轻松地移植到各种不同的硬件平台上。Linux的绝大多数底层代码都是用可移植的C代码编写,因此第三方开发者可以将Android移植到很多不同的设备上。   Android主要设计用于便携设备,如智能手机和平板电脑。Android具有完备的网络、图形及多媒体等支持库,符合当今车联网对端系统的要求,加上其具有完善的开发调试环境,极大地方便了开发人员在Android系统中开发应用。   在本文的车载终端中,Android系统板通过串行通讯接口和信号采集模块及GPS模块通讯,采集车辆的状态和位置信息,并通过基于802.11p技术的短距无线通讯模块,与网络中的其它车辆通讯,发送车辆的即时信息给相关车辆,并将实时数据通过LCD显示。   2 硬件总体设计   终端设计基于Android系统板,其主要组成部分为:信号采集模块、GPS模块、音频输入输出模块、以太网模块、LCD、3G模块、短距无线通讯模块、蓝牙模块和Wi-Fi模块。系统硬件框图如图1所示:   其中,Android系统板已经集成了串口、USB、音频输入输出、以太网、LCD、蓝牙、Wi-Fi等与外界通讯的模块,Android系统层对这些模块有完善的支持,这大大简化了车载终端的设计。   信号采集模块[2]使用意法半导体公司生产的STM32F103[3]系列微控制器作为主控模块,主要用于实时采集车辆信息,如速度、ACC、刹车、车辆方向等,并将采集得到的信号处理加工为系统需要的格式,通过事先定义的协议从串口发送到Android系统板。   STM32F103系列微控制器基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核,其增强型系列时钟频率达到72MHz,内置64K到512K的闪存,满足本系统应用需求。另外,STM32F103系列微控制器还有以下特点:具有丰富的外设接口如I2C、USART、SPI、CAN、USB2.0等;ARM Cortex?微控制器提供支持CMSIS[4]的标准外设库;软件接口标准(CMSIS,Cortex Microcontroller Software Interface Standard)是Cortex-M处理器系列的与供应商无关的硬件抽象层,使用CMSIS可以为处理器和外设实现一致且简单的软件接口,从而简化软件的重用、缩短微控制器新开发人员的学习过程,缩短新设备的上市时间。   GPS模块使用Ublox NEO-6M通用定位模块,输出标准报文,通过TTL电平的串行口发送到Android系统板。   3 软件设计   3.1 开发环境搭建   Android系统有多种完善的开发环境,比较常用的是使用Eclipse集成开发环境。Eclipse是著名的跨平台的自由集成开发环境,可以在Windows和Linux操作系统下运行。Eclipse最初主要用于Java语言开发,但通过添加插件的方式可以使Eclipse支持多种不同的开发及调试环境。如CDT插件支持C/C++语言开发、ADT插件支持Android应用程序开发、NDK插件支持Android应用程序的JNI接口的开发等。   本系统开发环境为Centos5.8操作系统(Linux桌面系统的发行版)安装Eclipse集成开发环境,并添加CDT、ADT、NDK等插件。   为了方便Android系统板和开发主机之间的文件复制,需要配置NFS文件系统。NFS是Network File System的简写,NFS允许一个系统在网络上与他人共享目录,通过使用NFS,用户就可以像访问本地文件一样访问远端系统上的文件。这样在开发主机上通过交叉编译环境编译出来的二进制文件就可以直接在Android系统板上运行,就像Android系统板使用本地文件一样,这大大方便了开发调试,节省开发时间。配置NFS需要在开发主机和Android系统板上分别配置。Centos5.8操作系统已经提供了对NFS支持,使用时只需要在/etc/exports文件中加入想要共享的目录及相应的用户权限并启动NFS服务即可,如需要共享/usr/nfs目录的内容,可进行如下步骤:   (1)创建目录/usr/nfs用于保存需要共享的文件。   (2)打开/etc/exports文件,并写入以下配置信息:   /usr/nfs *(rw,sync,no_root_squash)   其中,/usr/nfs表示需要共享的目录,*表示允许所有IP地址访问/usr/nfs。括号中rw参数表示对此目录访问的权限为读/写,如果此参数为ro则表示对此目录的访问权限为只读。参数no_root_squash表示如果用户为root,那么对于这个共享目录来说就具有root权限。   (3)启动NFS服务器,使用命令:   service nfs start   一般情况下,Android的Linux内核配置不支持NFS,因此需要配置Linux内核使其支持NFS,步骤如下:
  (1)假设Linux内核目录树下已有正确的默认配置文件.config,在Linux内核树下执行:   #make menuconfig   (2)选择File systems→Network File Systems进入NFS配置选项,将NFS client support和NFS client support for NFS version 3设置为“[*]built-in”,操作界面如图2所示:   (3)保存后退出,执行make命令编译Linux内核,将生成的内核映像烧入设备运行。   (4)在Android系统中创建/nfs目录,使用mount命令挂载NFS文件系统。如下:   mount -t nfs -o nolock -o tcp 192.168.0.138:/usr/nfs /nfs   其中,-t后面的参数指定了所要挂载文件系统的类型,在本系统中文件系统的类型为NFS。-o后面的参数为可选项,nolock表示不上锁,tcp表示跟NFS文件服务器通讯时使用TCP方式。指定NFS服务器的IP为192.168.0.138,服务器目录为/usr/nfs,本地挂载点为/nfs目录。   挂载NFS完成后,就可以在Android系统板上的/nfs目录下访问开发主机上共享目录的文件,也可以将Android系统板上的文件复制到开发主机上进行备份。   3.2 运行环境配置   在车载终端软件设计中常常需要使用C/C++语言来进行系统级的调用,但Android因为版权问题未提供标准glibc库,而是使用自己开发的Bionic libc库。这样使用标准方式编译的C/C++代码就不能正常运行在Android环境下。可以通过以下两种方法来解决这个问题:   (1)在交叉编译程序时使用-static参数将动态链接库编译到程序中。在Eclipse集成开发环境下,可通过右键点击想要修改的工程,选择[Properties],在弹出的对话框中选择[C/C++ Build]下的[Settings],然后在[Tool Settings]选择[GCC C Linker]下的[General],将复选框No shared libraries(-static)选中,保存后重新编译程序。   (2)使用ldd命令查看目标程序需要使用哪些动态库,然后将交叉开发工具链中对应的库文件复制到Android系统板的/bin目录下。   3.3 程序设计   车联网终端程序用户界面使用Java语言开发,使用了Android应用程序框架库,运行在Dalvik虚拟机下。底层数据采集和处理使用C语言开发,使用了交叉开发环境提供的标准glibc库,运行在Linux操作系统下。   这样既充分利用了Android美观的用户操作界面、完善的多媒体支持,又具有C语言灵活、直接操作硬件的能力。由于终端的用户界面和数据的处理运行在不同的运行环境且处于不同的进程,两个进程之间的数据通讯就成了必须考虑的问题之一。在Linux下可供选择的进程间通讯方式有很多,如命名管道、System V IPC[5](信号量、共享内存、消息队列)、套接字等。但是Android从系统安全角度考虑,不提供对System V IPC的支持,而相对于命名管道,套接字通讯方式在C语言和Java语言上都有很好的支持,使用起来也更方便,因此在本系统中使用套接字作为进程间通讯的方式。在本系统中,C程序作为Socket通讯的服务器端,Android应用程序作为客户端。车联网程序示意图如图3所示。   其中,数据采集模块实时采集车辆的信息,如ACC、油路状态、电路状态、车门状态、发动机状态、车辆速度、CAN等基本信息,并通过外接陀螺仪和疲劳驾驶检测模块采集车辆安全相关的信息,如车辆碰撞、车辆侧翻、司机疲劳驾驶等。   C程序的数据处理模块负责接收GPS模块发送的位置信息和数据采集模块发送过来的车辆信息,经过处理后通过短距无线通讯模块发送给其它车辆,短距无线通讯模块也可以接收其它车辆发送过来的信息,使车辆能在一定范围内共享信息。另外此模块还是Socket通讯的服务器端,接收Android应用程序的Socket请求,在建立通讯连接后也发送车辆数据到Android应用程序。   Android应用程序的数据处理模块负责接收和处理来自Socket的数据并将数据发送给界面显示模块,显示给用户。   用户界面也能与用户交互,接收用户的命令,通过Socket将命令发送给C程序,C程序再通过短距无线通讯将命令发送到其它车辆。例如车与车之间互相发送短信、语音或视频。   4 结束语   在《交通运输“十二五”发展规划》中,智能交通将成为国内未来交通运输业优先发展的主题,而智能车载终端是智能交通的重要组成部分,本文基于Android的车载终端,具有开发周期短、开发成本低、操作界面美观友好等特点。经过实际测试,该系统车载终端运行稳定可靠,具有较高的应用价值。   参考文献:   [1] Gargenta M. Learning Android[M]. 李亚舟,任中龙,杜钢,译. 北京: 电子工业出版社, 2012.   [2] 李朝青. 单片机原理及接口技术[M]. 3版. 北京: 北京航空航天大学出版社, 2005.   [3] STMicroelectronics. STM32F103CDE Performance Line Datasheet[Z]. ST Co.Ltd, 2008.   [4] ARM. Cortex Microcontroller Software Interface Standard[Z]. ARM Ltd, 2010.   [5] Neil Matthew, Richard Stones. Linux 程序设计[M]. 陈健,宋健健,译. 北京: 人民邮电出版社, 2010.
转载请注明来源。原文地址:
【xzbu】郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们删除已转载的信息。
xzbu发布此信息目的在于传播更多信息,与本网站立场无关。xzbu不保证该信息(包括但不限于文字、数据及图表)准确性、真实性、完整性等。}

我要回帖

更多关于 android 技术创新 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信