在微控制器上开发可穿戴设备GUI的重要技巧

2024-01-26 03:10

本文主要是介绍在微控制器上开发可穿戴设备GUI的重要技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

通过了解内存、图形和电池续航对用户体验设计和软件开发决策的影响,在MCU设备上构建更好的可穿戴设备GUI。

可穿戴设备市场正在蓬勃发展,这得益于消费者希望获得一系列触手可及的服务,以及更经济、更节能的硬件进入了这一领域。可穿戴技术仍处于起步阶段,呈现出一个有待突破的不稳定市场,苹果、三星和 Zepp Health(华米科技)等供应商都在争夺市场的头号交椅,其开发团队也在不断采用新技术,以求兼顾用户体验(UX)和电池续航。

随着越来越多的可穿戴设备OEM意识到基于微控制器的设备的价值,在此情景下,我们想要分享如何利用这些低功耗、资源受限的平台,来提供能与苹果和安卓生态系统使用的高端硬件相竞争的用户体验。

基于我们数十年来在嵌入式图形用户界面(GUI)方面的经验,以及我们最近与Zepp Health等客户合作的项目,以下是我们对在微控制器(MCU)平台上开发可穿戴设备GUI的主要建议。

1. 减少和优化内存使用

可穿戴设备GUI开发的最大困难就是——将UX设计师的愿景压缩到硬件平台上,但却没有足够的空间容纳大型图像资源和复杂的过渡。内存同时为代码和数据所用,我们优化得越好,受到的限制也就越少。

简化应用程序内存使用的第一步是确定它需要多少空间。无论是在设计阶段还是在用户测试之前,都值得为内存预算和分配建立常规基线,以了解应该在哪里和何时进行调整。

例如,下面的图表(摘自我们的可穿戴设备GUI开发指南的第二部分)说明了如何计算帧缓冲区所需的内存。内存分配是显示器分辨率和色位深度的函数,总内存将占用应用程序所需的帧缓冲区的总数(3D应用程序通常使用额外的深度和模版缓冲)。

除了帧缓冲区之外,您还需要弄清楚应用程序的代码和数据占用。有了这些基线以后,您就可以使用测量和分析工具、应用程序日志和运行时观察来发现和隔离应用程序重大更改后的任何内存问题。

我们的智能手表客户案例研究提供了一个例子:

“使用Storyboard的应用程序内存占用预览,我们马上就知道了,在初始UX设计中的所有图层和字体占用都会超出我们已有的闪存。我们决定折叠屏幕图层并使用Storyboard的字形导出编辑器来去除未使用的字体字符,从而节省空间,同时又不影响设计师的意图。”

Storyboard的应用程序内存占用预览和字形导出编辑器(红框部分)

2. 将MCU的功耗降至最低

高分辨率显示器、位置传感器、心率监测器和蓝牙无线电是一些会消耗更多电池电量的消费者驱动功能。但可穿戴设备用户希望电池续航是以周为单位的,而不是以小时为单位。较新的健身手环甚至能满足充一次电续航长达一个月。

“可穿戴设备在医疗行业还没有得到广泛应用的主要原因之一是需要定期给电池充电。患者可能会忘记充电,或者需要护理人员来进行操作。”——医疗可穿戴设备的电源层面,Electronic Specifier电子报

通过更好的电池、处理器和显示技术,以及基于硬件或应用逻辑来智能应用电源管理方案,可以实现更长的续航。

在我们的可穿戴设备电子书中,我们推荐了两种节能技术:

1. 尽可能触发睡眠模式,仅在有用户事件(如点击或加速传感器输入)时唤醒GUI。

2. 在可穿戴设备中,显示屏是最大的耗电源,因此,当设备处于未唤醒状态或低光照条件时,应将背光调暗。这可以通过降低背光的照明水平或在GUI中使用调光层来实现。

3. 创建有效的可穿戴设备用户体验

要与可穿戴设备市场的顶级商家竞争,就需要了解他们使用了哪些技术和元素来提供消费者喜爱的用户体验。风格、个性和色调与图形性能和应用程序延迟同等重要。

在为可穿戴设备设计UX时,有四个关键因素:

1. 适用性

屏幕越小,在显示信息量和交互界面尺寸方面需要克服的挑战就越大。大型、高分辨率的图像和长文本字符串应该被淘汰,并以简短、简化、能够快速传达行动和信息的元素取而代之。

2. 复杂性

可穿戴设备不是手机或平板电脑,用户的期望通常是“扫一眼,快速点击”。因此不能使用太多的元素让屏幕变得混乱,也不能有太多的导航层,否则用户会感到迷茫和不悦。

3. 专注

可穿戴设备通常与手机、平板电脑或台式机配对,应该作为这些设备的补充,而不是替代品。仅将您的用户体验设计专注于基本和核心功能上,并考虑设备之间的操作。请确保您的用户体验设计能够有效地做到,在配对的智能手机或平板电脑上映射智能手表的操作(如取消通知)。

4. 差异化

复制流行供应商的用户体验设计和行为选择也许是一条“捷径”,但吸引新用户和保持品牌忠诚度的最好方法是拥有自己的与众不同之处。

4. 图像的运行时优化

与代码优化一样,图像表现受大小、执行和渲染时间的影响。特别是,用于微控制器的可穿戴设备GUI的空间和处理器资源有限,因此图像越复杂,运行起来就越困难。

图像优化有很多工作要做,未来,我们将分享更多有关图像、字体优化的案例和内容。

总结

可穿戴设备市场已有了蓬勃发展,要取得更多的市场份额,供应商就需要重点关注如何在节能硬件上构建丰富的功能。了解内存、图形和电池续航对用户体验设计和软件开发决策的影响,将有助于您确立在可穿戴设备市场上的领先地位。

这篇关于在微控制器上开发可穿戴设备GUI的重要技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/645462

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

滚雪球学Java(87):Java事务处理:JDBC的ACID属性与实战技巧!真有两下子!

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~ 🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!! 环境说明:Windows 10