当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]工业产品的交互界面开发要求越来越接近于消费领域的产品。选择一种快速且低成本的嵌入式UI开发方案显得尤为重要,本文将为您介绍一种新的框架式嵌入式UI开发平台。

工业产品的交互界面开发要求越来越接近于消费领域的产品。选择一种快速且低成本的嵌入式UI开发方案显得尤为重要,本文将为您介绍一种新的框架式嵌入式UI开发平台。

 

 

1 . 串口屏

串口屏是指可以通过串口指令控制其显示的屏幕,如UART(TTL、232、485)、SPI等。若控制引脚较多且之间间存在一定的时序关系则统称为并口屏。串口屏所有的绘图、显示及人机交互都是依靠MCU与串口屏之间的指令、数据传输。串口屏最大的优点就是开发便利且大大减少了主控芯片的IO口占用,但为了实现更丰富的显示效果,串口屏内部需要集成高性能的为处理器,这也使得串口屏的价格比裸屏高出很多。

 

 

图1 简单串口屏

2010年以前的串口屏大多是通过上位机将要显示的内容预先下载到屏幕中,然后发送预设指令将各种界面显示出来。2014年后,功能更强大的组态屏使串口屏的产业链日趋成熟。由于串口屏的显示依赖其自带的库,所以其显示灵活度在一定程度上依旧受限。

 

 

图2 组态串口屏(图片来源网络)

2 . 嵌入式QT/E

相比于直接使用串口屏,嵌入式的QT/E的灵活度、自由性极大丰富。嵌入式的QT/E可以认为是QT在linux上的的精简版,它在底层摒弃了Xlib库以适应嵌入式应用的开发。使用 Qt 只需一次性开发应用程序,无需重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序。

 

 

图3 嵌入式Linux QT/E界面开发

3 . 嵌入式emWin

使用QT/E往往需要在微控制器上运行嵌入式操作系统,因此对于MCU的性能有一定的要求。除此之外,若之前未接触过QT/E,运用起来将花费一定的时间成本。相比之下,emWin更适合于快速、精简UI的开发。

emWin图形库由德国SEGGER公司开发,可为图形LCD设计提供高级支持,极大简化了LCD设计并缩短上市时间。为恩智浦ARM微控制器用户免费提供的emWin图形库,以其免费提供商业图库、使用简单、提升MCU运行表现和色彩逼真。

 

 

图4 emWin_Demo

4 . AWUI&AWTK

emWin说明书有一千多页,对于大多说开发者来说只是想使用emWin做个交互界面,需要花费大量的时间学习emWin的API。

为了使emWin更易用,致远电子在emWin基础上开发出AWUI,它是基于C++开发的一套MVVM框架,实现了数据绑定、命令绑定和窗口导航等基本功能,并提供丰富的GUI组件。AWUI相对于直接用emwin编程是巨大的飞跃, 因为它使用mvvm编程模型使得界面与逻辑分离(解耦)。MVVM是由MVC和MVP一路演化而来,它的作用就是实现用户界面和业务逻辑的分离,利于隔离变化、自动测试、分工合作。

 

 

图5 AWUI的框架思想

AWUI目前支持Qt和emWin,用Designer编辑界面,用C++开发ViewModel/Model,让开发者无需学习Qt和emWin的API最终的应用程序可以在Qt和emWin(要确保emWin上支持该控件)上运行。

基于AWUI,致远电子计划年内推出适用范围更广、更好用的AWTK。嵌入式UI开发将会以组件的方式集成于AWorks平台中,可在该平台下快速实现交互界面开发。

 

 

图6 AWUI发展计划

 

 

图7 AWorks中的UI框架

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

在工业物联网设备部署中,Modbus通信故障是导致系统停机的首要原因之一。据统计,超过60%的现场问题源于通信配置错误或数据解析异常。本文从嵌入式系统开发视角,系统阐述Modbus通信调试的方法论,结合实际案例解析如何高...

关键字: 嵌入式系统 Modbus通信

在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...

关键字: 单片机 看门狗 嵌入式系统

人工智能(AI)和机器学习(ML)是使系统能够从数据中学习、进行推理并随着时间的推移提高性能的关键技术。这些技术通常用于大型数据中心和功能强大的GPU,但在微控制器(MCU)等资源受限的器件上部署这些技术的需求也在不断增...

关键字: 嵌入式系统 人工智能 机器学习

Zephyr开源项目由Linux基金会维护,是一个针对资源受限的嵌入式设备优化的小型、可缩放、多体系结构实时操作系统(RTOS)。近年来,Zephyr RTOS在嵌入式开发中的采用度逐步增加,支持的开发板和传感器不断增加...

关键字: 嵌入式系统 软件开发 实时操作系统 Zephyr项目

在资源受限的嵌入式系统中,代码执行效率和内存占用始终是开发者需要权衡的核心问题。内联函数(inline functions)和宏(macros)作为两种常见的代码展开技术,在性能、可维护性和安全性方面表现出显著差异。本文...

关键字: 内联函数 嵌入式系统

在嵌入式系统和服务器开发中,日志系统是故障排查和运行监控的核心组件。本文基于Linux环境实现一个轻量级C语言日志库,支持DEBUG/INFO/WARN/ERROR四级日志分级,并实现按大小滚动的文件轮转机制。该设计在某...

关键字: C语言 嵌入式系统

在嵌入式系统和底层驱动开发中,C语言因其高效性和可控性成为主流选择,但缺乏原生单元测试支持成为开发痛点。本文提出一种基于宏定义和测试用例管理的轻量级单元测试框架方案,通过自定义断言宏和测试注册机制,实现无需外部依赖的嵌入...

关键字: C语言 嵌入式系统 驱动开发

在嵌入式系统与驱动开发中,内存映射I/O(Memory-Mapped I/O, MMIO)是一种将硬件寄存器映射到处理器地址空间的技术,允许开发者通过指针直接读写寄存器,实现高效、低延迟的硬件控制。本文通过C语言实战案例...

关键字: 内存映射 I/O操作 嵌入式系统

在嵌入式系统开发和多线程编程中,程序崩溃、内存越界等复杂问题常令开发者困扰。GDB作为强大的调试工具,其条件断点和内存查看功能可精准定位隐蔽缺陷。本文通过实际案例演示这些高级功能的应用,帮助开发者提升调试效率。

关键字: GDB 嵌入式系统
关闭