当前位置:首页 > 显示光电 > 显示光电
[导读]摘要:IOIO是一个面向Android手机的软硬件开发平台,通过USB接口实现Android手机与外界物理设备的互动。本文介绍了IOIO的硬件特性与开发环境,给出了如何用IOIO来实现对LED控制的实例。实验结果表明,采用IOIO开发An

摘要:IOIO是一个面向Android手机的软硬件开发平台,通过USB接口实现Android手机与外界物理设备的互动。本文介绍了IOIO的硬件特性与开发环境,给出了如何用IOIO来实现对LED控制的实例。实验结果表明,采用IOIO开发Android手机具有简单易用的特点。
关键词:Android手机;USB;IOIO

引言
    Android本意指“机器人”,是Google公司于2007年11月5日宣布的基于Linux平台的开源手机操作系统,是当今三大智能手机操作系统之一。它包括操作系统、用户界面、中间件和应用程序,拥有移动电话T作所需的全部软件,同时,其开放性保证该平台不存在任何阻碍移动产
业创新的专有权障碍。因此,其市场份额增长迅速,软件生态系统日渐成熟,大量软件开发人员投身到Android应用程序开发中来。
    当前Android手机主要集成了WiFi、蓝牙通信接口,它们具有传输速率高、通用性好等优点。但是在普适计算、物联网领域中,大量传感器、控制设备往往采用传统的串行通信、I/O控制等技术。目前,Android手机往往缺乏这些接口,虽然可以采用蓝牙转RS232等技术来实现Android手机与外部物理设备的通信与控制,但是蓝牙技术有通信距离短、不可靠、功耗高等缺点。特别是在低功耗物联网环境中,我们很难采用蓝牙、WiFi通信技术。因此这在某种程度上制约了Android手机在以上领域的应用。
    IOIO是SparkFun公司出品的一款专门为Android1.5版本以上系统设计的通用型开源控制模块,它给开发者提供了免费的系统电路图及系统主板MCU的Firmware,同时也提供了丰富的Java API接口。IOIO通过USB接口与Android手机相连,高度集成了数字I/O端口、PWM、模拟输入端口、I2C总线、SPI,以及UART控制器等功能组件,只需通过简单、直观的Java API驱动程序即可直接操作外部硬件I/O端口,既无需嵌入式编程,又不用外部编程器,使用方便灵活。因此,通过IOIO模块,Android手机可以方便地整合3G通信网络、蓝牙通信、触摸屏交互技术、各类传感器与外围物理设备相连,从而增强了手机与物理世界的信息交互能力,为Android手机的创新应用打下了良好基础。目前,许多国际著名品牌的Android手机和平板电脑都兼容支持IOIO模块,例如Google、Samsung、HTC、LG、Motorola等。

1 IOIO硬件结构
    IOIO主要采用了低功耗PIC单片机作为系统控制器,IOIO模块实物图如图1所示。IOIO硬件电路板上集成了模拟输入、I2C总线、SPI、UART、GPIO等多个功能接口部件。主要引脚功能分类如表1所列。



2 IOIO开发环境
2.1 Android应用程序开发简介
   
Android操作系统自上向下分成应用层、应用框架层、组件库层、虚拟机和Linux内核层。其构架如图2所示。


    应用层(Application layer)。Android操作系统和一系列核心应用模块一起发布,其核心应用模块主要包括电话短信功能、网页浏览器、联系簿等。
    应用框架层(Application Framwork layer)。开发者通过使用核心应用程序来调用Android框架提供的API组件。
    组件库层(Libraries layer)。Android包含了一套C/C++函数库,主要包括libc、Media Framework、WebKit、OpenGLES、FreeType、SQLite等,这些功能通过Android应用框架展现给开发人员。
    运行时环境(Android Runtime)。Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。每一个Android应用程序都拥有一个独立的Dalvik虚拟机实例。
    Linux内核层(Linux kernel layer)。Android底层核心是一个基于Linux 2.6.23内核开发的独立操作系统。主要是加了一个名为Gold fish的虚拟CPU以及Android运行所需的特定驱动代码。该层用来提供系统的底层服务,包括安全机制、内存管理、进程管理、网络堆栈及一系列的驱动模块。
2.2 IOIO软件开发环境要求
    IOIO模块的应用开发需要安装以下软件工具:
    ◆Eclipse IDE(Integrated Development Environment);
    ◆Android SDK(Software Development Kit),只能采用V6.0版本;
    ◆JDK(Java Development Kit);
    ◆下载IOIOLib库。它为Android手机提供了丰富的接口API,例如Digital I/O、模拟输入、PWM输出、Pulse输入、串行UART、SPI、I2C总线等。
    图3为IOIO软件开发环境界面。



3 IOIO应用开发实例——LED亮灭控制
    IOIO模块引脚0连接的是板载LED的正极,LED负极接地,因此高电平点亮,低电平熄灭,实验效果如图4所示。


    该演示程序核心Java代码如下:
    
   
   
    从以上LED控制实例中可以发现,基于IOIO的IOIOLib库,可以方便快速地构建Android手机电子互动应用系统,IOIO具有简单易用的优势。

结语
    IOIO是一个开放的人机互动平台,为Android手机提供了丰富的I/O接口资源,拓展了Android手机的应用领域,增强了Android手机与物理世界的信息交互能力,相信在物联网时代会不断涌现出大量Android移动创新应用系统,这将有利于信息物理系统的发展。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

伦敦2024年4月16日 /美通社/ -- ATFX宣布任命Siju Daniel为首席商务官。Siju在金融服务行业拥有丰富的经验和专业知识,曾在全球各地的高管职位上工作了19年以上。Siju之前担任FXCM首席商务官...

关键字: NI AN SI BSP

常州2023年9月25日 /美通社/ -- 9月23日,由江苏省商务厅指导,世界中餐业联合会、常州市人民政府主办的"第三届中华节气菜大会暨首届江南美食节"在江苏常州开幕。文化和旅游部国际交流与合作局一...

关键字: BSP 可持续发展 大赛 质量控制

北京2023年9月25日 /美通社/ -- 9月21日,由中国质量报刊社·中国质量新闻网主办的第六届食品高质量发展交流会在北京举行,会议主题为"高质量,新生活",旨在推动食品行...

关键字: 自动化 BSP ISO9001 NAS

北京2023年9月23日 /美通社/ -- 近日,主线科技正式获准在北京市智能网联汽车政策先行区道路开启常态化测试与示范,将与物流客户在真实开放的城区道路场景中,率先开启基于L4级别自动驾驶能力的智能卡车运输示范。 随...

关键字: 智能卡 测试 高速公路 BSP

曼谷2023年9月18日 /美通社/ -- 作为东南亚的旅游胜地,泰国一直在全球范围内吸引着无数游客的目光。泰国旅游和体育部近日公布的报告显示,今年前7个月,泰国旅游业总收入约为1.08万亿泰铢(约合人民币2233亿元)...

关键字: BSP GEN 国美 AN

哥伦比卡尔达斯2023年9月22日 /美通社/ -- 近日,天合跟踪与中国电建签订拉美地区哥伦比亚泰普伊光伏电站跟踪支架供货协议,将为其提供108MW智能跟踪系统,其中包含开拓者1P智能跟踪支架、智能算法、以及智慧云平台...

关键字: 光伏电站 跟踪系统 控制器 BSP

2型炎症领域新突破 上海2023年9月22日 /美通社/ -- 赛诺菲今天宣布,达必妥®(度普利尤单抗注射液)获得中国国家药品监督管理局(NMPA)批准,用于治疗适合系统治疗的中度至重度结节性痒疹的成...

关键字: PRIME BSP REPORT SAR

欧莱雅中国旗下上海美次方投资有限公司达成首次开放式创新投资 法国克里希2023年9月22日 /美通社/ -- 欧莱雅集团宣布对中国创新型生物科技公司杉海创新进行少数股权投资,以建立长期合作伙伴关系,共同开发新...

关键字: AN BSP DEVELOPMENT FOR

赋能企业实现业务数据的可识别、可见、可协作和安全数据的可操作 北京2023年9月22日 /美通社/ -- 亚马逊云科技持续加速分析与安全服务创新,守护安全基座,助力企业进一步释放数据要素价值,实现创新增长。在数字经济时...

关键字: 亚马逊 BSP 生成式AI SECURITY

重庆2023年9月22日 /美通社/ -- 全球领先的高端半导体封装载板和印制电路板制造商奥特斯连续第八年受邀,出席重庆市市长国际经济顾问团于9月22日举行的第十七届年会。 奥特斯连续第八年受邀,出席重庆市市...

关键字: BSP 印制电路板 微型 微电子
关闭
关闭