基于C语言开发的GUI框架

嵌入式技术

1367人已加入

描述

本文导读

AWTK面世4年有余,作为一款开源且商用免费的GUI框架,越来越被业界熟识并选用。已经与NXP、GD、瑞芯微、君正、安凯、灵动微、SigmaStar等多家合作,今天再次迎来AWTK和性能强悍的国产MCU结合,一起来看看会碰撞出怎样的火花。

AWTK GUI框架

AWTK全称为Toolkit AnyWhere,是ZLG倾心打造的一套基于C语言开发的GUI框架。旨在为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的GUI引擎,支持跨平台同步开发,一次编程,到处编译,跨平台使用。

先辑HPM6700系列MCU

HPM6000系列作为已量产的全球性能顶级的实时RISC-V微控制器,该系列旗舰产品HPM6750采用双Andes D45 RISC-V内核,配置创新总线架构、高效的L1缓存和本地存储器,创下超过9000 CoreMark和4500 DMIPS性能的新记录,主频高达 800MHz,为边缘计算等应用提供强大的算力。

RISC-V 内核支持双精度浮点运算及强大的 DSP 扩展,主频高达 816 MHz,创下了高达 9220CoreMark和高达 4651 DMIPS 的 MCU 性能新记录;

支持多种外部存储器:QSPI/OSPI NOR Flash,PSRAM,HyperRAM/HyperFlash,16b/32b SDRAM 166 MHz,SD卡和eMMC;

显示设备:24位RGB LCD控制器,1366 x 768,60fps,双目摄像头,2D图形加速和JPEG编解码;

通讯接口:2个高速USB OTG,集成PHY,2个千兆网口,4个CAN FD,17个UART,4个SPI,4个I2C;

电机系统:4组共32路PWM输出,精度达2.5ns,4个正交编码器接口和4个霍尔传感器接口;

模拟外设:3 个 12 位高速 ADC 5MSPS,1 个 16 位高精度 ADC 2MSPS,4 个模拟比较器,多达 28 个模拟输入通道;

安全:集成 AES-128/256,SHA-1/256 加速引擎,支持固件软件签名认证、加密启动和加密执行。

mcu

初次碰撞,强强联合

得益于AWTK高扩展性,用户可以轻松地将其移植到各种显示应用当中。

• AWTK多LCD支持与HPM多图层特性结合

多图层是HPM6700中LCD的一个重要特性,支持最多8个图层的叠加,且每个图层有支持不同的alpha配置。如下图展示了一个三图层颜色混合示意图:

mcu

每个图层还可以配置在屏幕上的位置和大小,从而实现多图层的叠加显示。

mcu

由此,多图层可以看作是多个LCD在工作,但是有一个输出接口,也正是应用这一点,结合AWTK的多LCD支持,实现了多图层的UI设计。AWTK的多图层方案同时支持图层的优先级设置,从而保证重要图层的高刷新率。

mcu

• AWTK 2D加速接口与HPM PDMA外设结合

对于嵌入式单核MCU来说,填充或者alpha blend都是非常耗时费力的,HPM6700系列包含PDMA外设可以认为是显示渲染的一个协处理器,让出MCU宝贵资源的同时,提供优于软件alpha blend几倍的混合速度。

AWTK提供g2d接口,完美支持市面上众多MCU的2DDMA功能。

mcu

• AWTK软件矢量画布与HPM高主频运算结合

矢量图片实际上是几何图形的组合,本身包含的是图片的线条路径和形状填充信息,可以无限放大且不失真,不会受到分辨率的限制。因此在UI设计中被广泛应用。以往也都用于包含GPU的MPU处理器上。

AWTK在设计之初便考虑到矢量绘图的需要,内部集成了agge软件矢量绘图组件。同时支持接入硬件GPU。对于HPM6700系列芯片,高主频完全可以分担一部分算力给软件agge。从而实现矢量绘图。

效果展示

借助AWTK Designer PC拖拽开发工具,快速实现复杂UI设计,在HPM微控制器多图层和PDMA的加持下,轻松实现流畅效果。

审核编辑 :李倩

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分