首页 > 嵌入式软件 > android

近年来随着“物联网”嵌入式解决方案的出现,该系统已为继续拓展应用范围做好了准备。

获得开放手机联盟 (Open Handset Alliance) 的认可是 Android 系统加速发展的关键助推剂。该联盟通过开放式标准,确保硬件、软件和电信通信都得到明确的定义。 确保 Android 操作系统成功的另一关键便是其相对直观的用户界面,该界面充分利用了触摸动作和手势,为用户提供更高水品的链接。 而且,经过改进的语音识别、多个灵活的通讯链接、逼真的高清显示以及超越普通分辨率的相机模块也仅仅是帮助 Android 产品大获全胜的少数几个原因。

对设备和用户界面设计人员来说,这究竟意味着什么呢? 本文将介绍 Android 产品设计的所有元素,讨论有助于进行 Android 产品的主要和/或扩展硬件开发的现有工程方法、资源、工具和参考设计。

开源与闭源

开源与闭源之间的战争从未停止过,已经蔓延了好几代设计。 闭源意味着仅能让一组较少的创新者进行自由创造,就像开发资源和许可意味着设计人员需要作出更多承诺一样。 在开源情况下,每个人都通常能免费或者支付很少费用后,在一个伞形框架下开发产品。 闭源产品看起来从一开始就做得很好,这是因为其背后(通常)有一个纪律更严明的团队。

然而毋庸置疑的是,Android 产品凭借低成本、迷人的屏幕和用户界面以及多元化应用程序 (app),在销量上完胜劲敌 - 苹果 (Apple) 的 iPhone 和 iPad。 制造商如推出 Galaxy 级产品 Samsung、包括 Barnes、Noble 在内的其它许多非传统硬件公司以及 Amazon 都在提供风格多样并捆绑了各种功能和 app 的 Android 产品。

这说明了两点。 第一,我们能定制自己的硬件,以更低的成本扩展 OEM Android 产品,将 Android 系统用于我们的显示、通信链接和用户界面。 第二,也可设计一个与我们的专用硬件或者专有系统紧密联系的嵌入式 Android 系统,充分发挥开放式资源的优势,摆脱硬件束缚,自由选择我们的新一代处理器、模块、电路板或者 OEM 平板电脑,只要这些器件满足 Android 产品要求。

需要什么

随着产品性能和功能的不断提升,最低要求也在变化。 现代 Android 设计至少需要能够驱动一个 32 位 ARM7、MIPS 或者 x86 架构的能力,且至少应有 512 M RAM。 处理器必须能够运行使处理任务保持开放状态的存储器管理方案,而不仅是被挂起后用于节能。

这里还有许多值得去玩味。 用一个运行频率高达 1GHz 的处理器管理、指挥许多对实时性敏感且常常重叠的功能并非易事,如图形处理、加速仪和其其它感器、可识别手势的投射式电容触摸屏、摄像头、USB、GPS、Wi-Fi 和 音频 I/O,而这些也仅是其中一少部分。

当开发一个兼容 Android 产品的硬件平台设计时,可能需要首先考虑可提供 ARM、MIPS 或者 X86 处理器的芯片制造商,因这些芯片可支持和运行作为 Android 个性化基础的 Linux 打包操作系统。 然而此时还需注意,除了高端 GHz 级处理器外还有体积更小的集成式专用处理器,它们能分担许多处理任务,从而争取引起注意、获得资源。

例如, FTDI 的 FT311D-32L1C-R 专用型 USB Android 产品枚举器和通信链接控制器。 该控制器称作 USB Android 主机 IC,旨在允许在 Android 产品系统内通过 USB 访问外设硬件。

Android 开放配件模式(OAM,OS 3.1 以及更高版本)允许带有 USB 硬件的外部设备能以特定的配件模式进行交互。 此时,由外部设备提供电源,因此平板电脑或者智能手机无需作为一个主机侧控制器提供 500 mA 电源,以满足 USB 需要。 这种模式下,不需要 Android 设备上的任何驱动程序、软件或者开销。

这款相对较小的 32 引脚 FT311D 能作为一个独立的协处理器执行全部 USB 枚举序列任务并支持 Android 开放配件模式。

1.jpg

Android开放式架构平台在物联网嵌入式中的解决方案图 1:通过分担开放式配件模式的功能,该协处理器能执行所有枚举和再枚举任务,而无需任何驱动程序或 Android 处理器开销。

该协处理器支持 USB 2.0 的 12 MHz 速度,能够完成所有以 USB 为中心的功能,从而减少主处理器负载,尤其是将外设与 USB 连接时。 FTDI 在 Digi-Key 网站上推出了 Android 接口解决方案培训模块 。

PIC 处理器制造商 Microchip 也支持深受大众欢迎的 Arduino 产品平台。 考虑到满足 Android 产品开发的需求,Microchip 推出了 DM240415 配件开发入门套件。该套件基于 PIC24F 处理器。 该平台还提供了一种支持 OAM 的专用协处理器方法,由微控制器或 USB 分担关键链接和功能,如 Android 产品接收和发出数据。

这款免版权费、无许可费的 DM240415 配件开发入门套件提供了一个嵌入式调试器、电源、支持图形库的软件、IrDA 协议栈、USB 协议栈、闪盘驱动文件系统、电容式触摸软件、TCP/IP 协议栈和 MiWi 个人 Wi-Fi 支持功能。 为了将定制硬件与 Android 系统连接,该开发板还提供了八个 LED 状态指示灯、一个电位计和用户接口按钮,以便能用作应用开发和测试板。 参考文献 [1] 中给出了一个参考原理图,可作为平板电脑的一种参考设计。 该 Android 客户端驱动程序被作为 PIC USB 主机协议栈以上的一个层来执行。

2.jpg

Android开放式架构平台在物联网嵌入式中的解决方案图 2:这款由 Microchip 提供的免版权费 Android OAM 模式软件通过加入一个 Android 客户端程序并基于其 USB 协议栈构建而成。

FTDI 和 Microchip 均对各自的器件提供开发支持,但也可由第三方提供开发支持。 Embedded Artists 通过其 EA-APP-001 Android 开放配件应用套件提供了一种开源演示和开发板。 按照相同的分离式处理器任务管理分配方案,该套件采用了两个协处理器: NXP Semiconductors 的 LPC1769(这是一款高端、32 位、120 MHz ARM Cortex-M3 器件)与 NXP 的 LPC11C24(这是一款体积更小的 50 MHz、32 位 ARM Cortex-M0 零件),用于向并行运行流分配较高或较低水平的处理任务。

LPC1769 侧可支持 10/100 以太网、CAN、ZigBee (NXP Jennic) 和串行任务。 LPC11C24 侧不仅共享 CAN 互连,还利用其 RGB LED、按钮、温度和光线传感器管理硬件开发和传感器连接。 该套件也可用于通过其某一个低功耗 I/O(PIO1_4) 进行低功耗唤醒功能的开发测试。

一个漂亮的特性便是充电器馈通模式。 除了 5 V 备用电源外,这个 USB 型充电器接口还能从被测装置抽取电能。 板上有一个原型开发区域,允许通过充电器访问 USB 数据信号和 OAM 模式。 然后,充电器能在充电时自动通过 Wi-Fi 进行音乐和图像同步。 NXP 的 LPC1700 系列产品培训模块 与其 LPC11xx 编码密度产品培训模块同时提供。

3.jpg

Android开放式架构平台在物联网嵌入式中的解决方案图 3:双协处理器能够分配与 Android 有关的外设和任务,并用作 Android 硬件扩展的开发平台。

为运行而生

除了外设开发和 OAM 支持外,板级系统、参考设计以及开发套件还能为主要 Android 应用运行频率达到数个 GHz 的高端处理器。 让我们了解一下基于 ARM Cortex-A8 的 1 GHz Olimex A13-OLINUXINO-MICRO 板,该板用于基于 Linux 的 Android 产品开发。 该板以 Allwinner SoC 为基础,是基于各种高端处理器(A8、A13、MX233 等)的 OLinuXino GHz 级处理器板的一块。这些都是您希望在更高端控制中使用的处理器(图 4)。

Android开放式架构平台在物联网嵌入式中的解决方案图 4:这款高集成度 Olimex Linux Android 开发平台基于 Allwinner A13 处理器,采用 SoC 技术,实现了高性能、低功耗和很好的 Android 兼容性。

在这样的速度下,单核与多核处理器能够吸收不同外设功能的所有开销,并直接执行如 NAND 闪存、DDR RAM, SD 卡、3D 图形、USB 等数据任务和/或密集型处理任务。

Olimex 还有一款基于 1 GHz ARM Cortex-A8 处理器的 A10S-OLINUXINO-MICRO Linux 开发板,这是一台开源式 Android/Linux 单板微型计算机。 该板支持 USB 2.0 和 HDMI 图形功能,支持 VGA TFT 分辨率。 该板还配有 50 个 I/O 线路,用于协助原生硬件和接口的开发。

总之,可将这一 Android 处理器模块视作具有一组标准化外设、功能、特性和开源代码的下一代嵌入式处理器。 其高端性能和设计选项会让 Android 系统成为广受制造商欢迎的一种全新用户接口,同时又为 OEM Android 系统打开一扇门,成为嵌入式设计人员的设计法宝。

换一批

延伸阅读

[行业资讯] 做物联网操作系统,为什么是一个“九死一生”的行当?

做物联网操作系统,为什么是一个“九死一生”的行当?

阿里AliOS、谷歌Fuchsia、西门子Mindsphere、ARM公司mbedOS…成功的IoT操作系统意味着更大的市场份额、更高的话语权和可观的经济回报。而且已经存在多时的工业互联网平台亦可被看作是某种层面的IoT操作系统,这篇文章我......

关键字:阿里 谷歌 嵌入式操作系统

[行业资讯] 在不同领域埋下座位,深挖三星强大的背后

在不同领域埋下座位,深挖三星强大的背后

物联网配合人工智能将会给社会带来巨大的变化,然而目前基于深度学习的芯片难以实现物联网对于低功耗的需求。这时候就是神经模态芯片大展身手的地方。 ......

关键字:GPU AI 物联网

[行业资讯] 被 Intel 和 IBM 重压,神经模态计算能否发生蜕变?

被 Intel 和 IBM 重压,神经模态计算能否发生蜕变?

物联网配合人工智能将会给社会带来巨大的变化,然而目前基于深度学习的芯片难以实现物联网对于低功耗的需求。这时候就是神经模态芯片大展身手的地方。 ......

关键字:芯片 物联网 GPU

[行业资讯] 高效低耗计算机系统大行其道,传统架构如何展露才华?

高效低耗计算机系统大行其道,传统架构如何展露才华?

随着物联网时代的到来,海量的数据蜂拥而至。特别是各种应用终端和边缘侧需要处理的数据越来越多,而且对处理器的稳定性,以及功耗提出了越来越高的要求,这样,传统的计算体系和架构的短板就显得愈加突出,未来,具有更高效率和更低功耗的计算系统一定会大行......

关键字:物联网 芯片 内存

[行业资讯] 华为鸿蒙将削弱安卓主导地位

华为鸿蒙将削弱安卓主导地位

据外媒报道,虽然华为自主开发的操作系统的官方细节消息还未公布,但一家知名行业分析公司预测,鸿蒙系统将让Android系统变得更弱。市场研究机构Strategy Analytics表示,美国对华为的限制将使得这家公司能够在2019年底在中国市......

关键字:华为 鸿蒙系统 Android系统
条评论

我 要 评 论

网友评论

大家都爱看