物联网基础技术5_第1页
物联网基础技术5_第2页
物联网基础技术5_第3页
物联网基础技术5_第4页
物联网基础技术5_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章

硬件接口Android移植在Android系统移植中,有很重要的一个部分工作,就是为新平台的硬件设备移植程序。比如在物联云魔盒Contex-A9创新平台(以下简称A9平台)上开发适应其硬件设备的APP应用程序,主要内容包括按键操作、SD卡操作、ZigBee通信、WiFi通信、蓝牙通信、短信和通话、GPS及位置服务、百度地图与应用、北斗定位、数字摄像头、模拟摄像头、加速度传感器、姿态传感器、红外遥控传感器和磁力传感器等安卓程序开发。3.1按键操作3.1.1工作原理按键使用GPIO接口,但按键本身需要外部输入,按键入口对应于核心板的GPIO接口,当其中一个按键被按下,通过查询方式就可以检测到是哪一个接口有输入信号,从而控制相应操作,但实际按键动作会在几毫秒至几十毫秒短时间内产生信号抖动。例如,当按键被按下时,其动作就像弹簧的若干次往复运动,将产生几个脉冲信号。一次按键操作将会产生若干次按键中断,从而会产生抖动现象。因此驱动程序中必须要解决去除抖动所产生的毛刺信号问题。目前编译好的按键驱动已经加载到Android内核,用户只需要使用Android控件按键事件,编写按键程序即可。任务:将A9平台通过MinUSB连接上电脑,运行AndroidStudio集成开发环境,在弹出菜单中选择OpenanExistingProject导入配套资源的MyKeyDemoApplication应用程序。在布局设计视图最上方EditText控件显示按键硬件编码信息,TextView控件显示按键事件详细信息,包括按键动作、按键代码、重复次数、硬件编码和按键标志。3.2

SD卡操作3.2.1工作原理SD卡已成为目前消费数码设备中应用最广泛的一种存储卡。SD卡是具有大容量、高性能、安全等多种特点的多功能存储卡,它比MMC卡多了一个进行数据著作权保护的暗号认证功能,读写速度比MMC卡要快4倍,达2M/秒。一般在物联网的Contex-A9平台的系统都是安装在SD卡。因此,Android应用程序访问SD卡,需要申请访问SD卡的权限。即需要在应用程序中的AndroidManifest.xml中加入访问SD卡的权限。A9平台带有SD卡,用户也可通过SD卡口放置卡,在拔卡之前运行“设置”→“设备”标签中选择“存储”。运行“ES文件浏览器”应用程序查看SD卡内的文件。3.3

ZigBee通信3.3.1工作原理在ZigBee通信过程中,终端主控模块实时查询传感器的温湿度数据,并通过终端无线模块上报给嵌入式平板中的ZigBee协调器,Android应用程序通过串口从ZigBee协调器获取并展示传感器的实时数据。所需硬件设备:嵌入式平板1台,1个节点主控模块及其电源、1个ZigBee无线模块、1个温湿度传感器模块、1根MiniUSB数据线。搭建硬件环境,将ZigBee无线模块插接到主控模块无线节点接口母口上,将温湿度传感器插接到主控的另一个母口上,给温湿度传感器模块供电,然后按一下主控模块开机键,观察到首页显示出无线网络与传感器信息后,按一下左侧菜单键,打开的通信信息页面3.4

WiFi通信3.4.1工作原理WiFi是一种可以将个人电脑、手持设备等终端以无线方式交换数据的局域网,帮助用户访问电子邮件、Web和流式媒体的技术,底层硬件通常是集成化WiFi芯片。能够访问WiFi网络地方被称为热点,其在2.4GHz频段工作,优点是传输速度快,最高可达到11Mbps。设置WiFi应用3.4.2实现过程

在A9平台中依次选择“菜单→设置→无线和网络→WLAN”打开WLAN。点击【扫描】菜单,如果有无线网络,会自动搜索到所有可用的无线网络,点击需要连接的网络,弹出输入密码对话框,输入正确密码后,点击【连接】按钮连接到指定网络。3.5

蓝牙通信3.5.1工作原理蓝牙是一种支持设备短距离通信的无线电技术,一般10米内。利用蓝牙技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与因特网之间的通信,从而使数据传输变得更加迅速高效,为无线通信拓宽道路。蓝牙采用分散式网络结构以及快跳频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHz频段。其数据速率为1Mbps,采用时分双工传输方案实现全双工传输。3.5.2实现过程在A9平台中依次选择“菜单→设置→无线和网络→蓝牙”打开蓝牙。点击【搜索设备】菜单,如果有蓝牙设备,会自动搜索到所有可用的蓝牙设备。点击需要匹配的蓝牙设备,弹出蓝牙配对请求对话框,输入匹配码后,点击【确认】进行匹配。3.6短信和通话3.6.1工作原理

电话系统Android应用程序如果应用程序使用电话服务API,那么在使用API前,检查设备是否有电话服务硬件。为此,需要使用PackageManager的hasSystemFeature方法,并指定FEATURE_TELEPHONY功能来检测是否有电话服务。(2)短信Android应用程序短信(ShortMessageSystem,SMS)用于手机间发送短文本消息,为发送的用户来阅读文本消息和应用程序使用数据消息提供支持。但短信传递不是很及时,与使用基于IP或者套接字的传输相比较,使用SMS在应用程序间传递数据消息的速度很慢,而且花费较大并且具有较高的延迟。因此SMS并不真正适合于要求实时响应的应用程序。3.6.2实现过程将4G手机卡放置在A9平台的自弹式SIM卡槽,卡金手指面朝上,带斜口一侧先插到SIM卡槽,正常插入卡后会听到锁住卡的清脆响声,此时SIM卡已锁牢,不能随意拔出来,再将4G天线安装到A9平台上。在AndroidStudio开发环境中,将MySendSMSApplication应用程序运行在A9平台上。输入手机号码点击【拨打此号】可以进行拨号操作。输入手机号码和短信内容,点击【发送短信】按钮短信将被发送到指定号码。3.7

GPS及位置服务3.7.1工作原理全球定位系统(GlobalPositioningSystem,GPS)GPS空间部分是由24颗卫星组成,距地表20200km,均匀分布在6个轨道面,每个轨道面4颗,轨道倾角为55度。卫星分布使得在全球任何地方任何时间都可观测到4颗以上卫星,并能在卫星中预存导航信息。地面控制系统由监测站、主控制站、地面天线所组成,地面控制系统负责收集卫星传回的消息并计算卫星星历、相对距离和大气校正等数据3.7.2

实现过程A9平台解锁后,依次选择“菜单→设置→位置信息”,在【位置信息】中打开位置信息。在【位置信息】界面点击【模式】选项进入【位置信息模式】界面,勾选“仅限设备”和“GPSsatellites”。在AndroidStudio开发环境中,将MyGPSDemoApplication应用运行在A9平台上,界面如图所示。3.8

百度地图及应用3.8.1工作原理百度地图API是为开发者免费提供一套基于百度地图服务的应用接口,包括JavaScriptAPI、Web服务API、AndroidSDK、iOSSDK、定位SDK、车联网API、LBS云等多种开发工具与服务,提供基本地图展现、搜索、定位、地理编码、路线规划、LBS云存储与检索等功能,适用于PC端、移动端、服务器等多种设备,多种操作系统下的地图应用开发。3.8.2

实现过程在电脑浏览器中访问百度地图API官网/,登录百度账号,进入“控制台看板”中选择“我的应用”页面。单击“创建应用”,进入创建应用页面,输入应用名称,在应用类型中选择AndroidSDK。3.9

数字摄像头3.9.1工作原理数字摄像头可以将视频采集设备产生的模拟视频信号转换成数字信号,进而将其储存在计算机里。数字摄像头可以直接捕捉影像,然后通过串、并口或者USB接口传到计算机里。目前市场上的摄像头基本以数字摄像头为主,而数字摄像头中又以USB数字摄像头为主,市场上可见的大部分都是这种产品。3.9.2实现过程在AndroidStudio环境中新建名为MyCameraDemoApplication的应用程序,在界面布局res/layout/activity_main.xml中添加一个SurfaceView控件和一个Button按钮,SurfaceView用于预览照片,Button用于拍照。将CameraDemo应用程序运行在手机上,如图所示。3.10加速度传感器3.10.1工作原理加速度传感器是用来感应嵌入式平板加速度的,其返回值是一个长度为3的数组(value),数组中的3个元素依次代表嵌入式平板在x轴、y轴和z轴方向上的分量,单位都是米/平方秒。3.10.2

实现过程在AndroidStudio环境中新建名为AccelerationSensorDemo的应用程序。右击AccelerationSensorDemo应用程序,在弹出菜单中选择NewClass,在NewJavaClass的Name选项中输入RotateUtil,左击Finish完成RotateUtil.java文件添加,用于将加速度传感器获得的数据转换成屏幕上的x和y坐标。在AndroidStudio环境中,将应用程序运行在A9平台上,平板倾斜时,屏幕上的圆球会向低处滚动,效果如图所示。3.11姿态传感器3.11.1工作原理姿态传感器主要用于感知A9平台姿态的变化,其每次读取的是静态的状态值,表示当前的姿态。每组姿态值包括3个,分别代表A9平台在Yaw、Pitch和Roll轴的旋转角度。3.11.2实现过程在AndroidStudio开发环境中,将应用程序运行在A9平台上。当A9平台姿态变化时,屏幕上的显示数据会随之变化,如图3-20所示。3.12

磁场传感器3.12.1工作原理磁场传感器主要用于探测嵌入式平板周围的磁场强度,其返回值是一个长度为3的数组(value),数组中的3个元素依次代表磁场强度在x轴、y轴和z轴上的分量,单位都是特斯拉。磁场传感器坐标系的原点位于嵌入式平板的左下角。x轴平行于屏幕的短边,从左到右,y轴平行于屏幕的长边,从上到下,z轴垂直于屏幕,与x轴和y轴正交。坐标轴绑定在嵌入式实验平板,即坐标轴不会随着嵌入式平板姿态的改变而改变。3.12.2

实现过程在AndroidStudio开发环境中,将应用程序运行在A9平台上。当A9平台位置变化时,屏幕上的显示数据会随之变化。3.13

IrDA红外通信3.13.1工作原理红外通信(TheInfraredDataAssociation,IrDA)是一种利用红外线传输信息的通信方式,可传输语言、文字、数据、图像等信息。数据通信按发送速率分为三大类:串行红外、中速红外和高速红外。串行红外速率覆盖RS-232端口通常支持的速率是9600b/s~115.2kb/s,中速红外可支持0.576Mb/s和1.152Mb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论