用FREE RTOS制作了一个超华丽的图形界面,速来围观!

2019-07-20 07:12发布

本帖最后由 willis168 于 2018-7-15 11:51 编辑

今天终于成功研制出一个非常华丽的图形界面,效果超好,既有半透明的毛玻璃效果,又有水滴动态效果,还支持换肤,赶紧来围观一下吧!
1.jpg


2.jpg

本次发文主要是想谢谢OpenEdv这个论坛提供了那么多资料,让我学习到了很多东西。真心感谢!以后有心得还会继续发文。
另外还想谢谢论坛里一位叫“弹痕”的朋友,因为我这个实验是以“弹痕”那个RTOS实现方案为基础的。
本次实验实现的效果并不是很好,论坛上说的屏幕小难解决、画出来的界面不怎么好看、显示的颜 {MOD}不太准确等等问题都没怎么优化,
由于赶着交作业,就先这样了。有兴趣的朋友可以自己调试。
下面上代码(资料自己去百度了)。PS:由于我的LCD不是原子哥的,我的LCD背光控制引脚BL是低电平使能,所以如果LCD黑屏的朋友,可以把LCD_LED=0改为LCD_LED=1即可。

111.png

原子哥提供的实验29提供了ucOS+ucGUI的移植,尽管很好,但是对于像我这样的初学者同时消耗两个内容太难了,本人想一个一个吃掉,先吃ucGUI,可能是原子哥比较忙,没有提供相关移植过程的教程,小弟只能自己琢磨,最后终于搞定,现班门弄斧!
硬件平台:正点原子开发板,软件:FREERTOS 3.98
步骤:
(1)以原子提供的TFT-LCD实验例程为基础,进行ucgui移植;
(2)便于管理,在实验例程的工程中建立ucGUI文件夹,将ucgui3.98中的ucGUI/AntiAlias,ucGUI/ConverMono,ucGUI/ConverColor,ucGUI/Font,ucGUI/Mendev,ucGUI/Widget,ucGUI/WM,ucGUI/Core等目录及内部代码文件复制到实验例程的ucGUI文件夹中,并在projet/management中相应地建立上述工程目录,并将各自所包含的文件添加到工程中。
(3)同样方法,建立Config、ucGUI_X和ucGUI/LCDDriver三个文件夹和相应的三个工程目录,将正点原子例程29中Config中三个文件复制过来,将ucGUI中的GUI_X.c和GUI_X_Touch.c复制过来,将LCDDriver中的ili9320_ucgui.c,ili9320_api.c和ILI93XX.c复制过来,最后仍然要添加到工程中;
(4)删除原工程hardware中lcd驱动文件ILI93XX.c
(5)在flash/config flash tool中的include选项中添加ucGUI/core,Config,ucGUI_X和ucGUI/LCDDriver三个目录路径
(6)最后编译通过,由于ucGUI版本的原因,可能在连接的时候会出现 一个LCD_L0_GetDevFunc变量没有定义,这时只需在ucGUI/Core/LCD_AP.C中屏蔽该变量即可。


222.png

3.png





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。