首页 > 代码库 > STM32+uCOS-II+uc/GUI移植 (uC/GUI API函数学习一)

STM32+uCOS-II+uc/GUI移植 (uC/GUI API函数学习一)

  最近一段时间以来,想学习移植uCGUI。在网络上找了大量的移植资料和学习教程,加上自己的不断努力,成功的完成了移植。现将学习中遇到的问题和已经记录下来,方面自己的翻阅,也可以为初学者提供一条捷径。

uC/GUI基本函数:

  • 在LCD上显示文本

  GUI_DispString("")

  参数:你希望显示的文本

  • 选定坐标

  GUI_GotoXY(x,y)

例如:在(10,10)坐标点位置,显示Hello World!文本

  GUI_GotoXY(10,10);

  GUI_DispString("Hello world!");

<1>文本API函数:

技术分享

文本绘制模式:

  1. 正常文本:GUI_TEXTMODE_NORMAL
  2. 反转文本:GUI_TEXTMODE_REVERSE
  3. 透明文本:GUI_TEXTMODE_TRANS
  4. 异或文本:GUI_TEXTMODE_XOR
  5. 透明反转文本:GUI_TEXTMODE_TRANS | GUI_TEXTMODE_REVERSE

<2>数值API

技术分享

<3>图形处理API

技术分享

<4>字体

当前uC/GUI版本提供4种字体:等宽位图字体、比例位图字体...

为了能在你的应用中使用一种字体,必须要做到下面几点:

  • 字体在与uC/GUI规范相兼容的"C"文件,工程文件或库这三种文件中任一种当中
  • 字体文件与你的应用链接
  • 字体的描述要包含在GUIConf.h中(这个很必要,这是为了避免由于没有声明的外部常亮而产生的编译警告)

字体API

技术分享

<5>位图转换

能用于uC/GUI的位图通常定义为"C"的GUI_BITMAP结构,位图转换器是一个容易使用的Windows程序。仅仅载入一副位图(.bmp格式)到程序中,如果需要则转换该位图,然后将结果保存为一个"C"文件,供uC/GUI使用,这样就能在屏幕上显示这幅位图了。

一副图像必须首先以一个.bmp格式文件的位图形式载入,位图转换器不能从一个RGB模式的位图生产"C"文件,以下类型的.bmp文件可以在程序中载入:

  • 带调色板的每像素1,4或8位格式
  • 无调色板的24bpp
  • RLE4和RLE8格式

RLE:run-length encoding 行程长度编码,如果你的位图包括很多相等颜色的像素序列的话,RLE压缩方式是行之有效的。

在UCGUI源文件中的Tool文件夹下有uC-GUI-BitmapConvert.exe位图转换器软件

<6>预定义颜色

除自定义颜色外,在uC/GUI中预定义了一些标准的颜色

技术分享

颜色API:

技术分享

 

STM32+uCOS-II+uc/GUI移植 (uC/GUI API函数学习一)