一种非常精简的嵌入式图形库(GUI Lib)


方案概述

随着显示技术的发展,越来越多的数码产品中加入了电子显示屏来起到更为丰富的人机交互效果,例如,心率血压计、电子秤、电子标签、智能手环、蓝牙耳机等:


但是,不知道大家有没有留意,这些数码产品显示的内容比较单一。从技术实现角度来说,出于对成本及功耗的考虑,这些数码产品往往使用低性能的单片机(MCU)和较少的存储资源,这使得开发人员很难自由地、灵活地绘制自己所需要图案。而在那些高性能的处理器上,如手机、PDA等,由于支持了各类强大图形用户界面(Graphical User Interface,简称 GUI),开发人员绘制出酷炫图案就变得轻而易举。

为此,JUMA针对嵌入式系统开发了一套简易的图形库,它占用很少的资源,可以跑在低成本单片机上,其架构如下:


使用该嵌入式图形库流程如下:

  • 1. 开辟内存用于存放显示内容;
  • 2. 调用GUI Lib的API绘制图案;
  • 3. 通过驱动程序将图案显示在屏幕上;
  • 4. 清理内存;

目前,嵌入式图形库支持点、线、圆形、矩形、文字的绘制,这里列出部分API,详情请查阅JUMA SDK

  • gfx_init_screen - 初始化
  • gfx_clear - 清除显示区域
  • gfx_draw_circle - 绘制圆形框
  • gfx_draw_rect - 绘制矩形框
  • gfx_fill_circle - 绘制圆形区域
  • gfx_fill_rect - 绘制矩形区域
  • gfx_draw_image - 绘制指定图片
  • gfx_draw_line - 绘制线段
  • gfx_draw_pixel - 绘制像素点
  • gfx_set_font - 设定字体
  • gfx_draw_char - 绘制字符
  • gfx_draw_string - 绘制字符串

效果演示

显示“波纹”图案:


显示“文字”图案:


支持手机APP通过蓝牙传输图案,并在单片机内存中一次性设置图像帧:



技术指标

系统要求

  • ROM: 5KB;
  • RAM: 128B;
  • MCU: ARM Cortex-M系列;
  • 依赖: Library C;

服务内容

软件

  • JUMA SDK;
  • Demo案例和说明;
  • 蓝牙绘图助手(可选);

方案咨询

请发邮件至hello@jumacc.com,客服人员会和您联系。